Last active
August 27, 2019 04:11
-
-
Save hotta/5b44dcfb50f4ab7c145ddfe227313e23 to your computer and use it in GitHub Desktop.
Gradle QuickStart
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Gradle QuickStart - 7.2. 基本的なJavaプロジェクト | |
// cf. http://gradle.monochromeroad.com/docs/userguide/userguide.html | |
// Gradle が使用する JRE | |
// システムの JDK/JRE。デフォルト以外の JDK を使用したい場合は | |
// JAVA_HOME 環境変数を調整する。 | |
// Gradle が使用する Groovy | |
// Gradle 同梱の Groovy。システムの Groovy は参照されない。 | |
// Gradle 起動時のパス | |
// GRADLE_HOME/bin が PATH に追加されていること | |
// Gradle実行時に引き渡すJVMオプション | |
// 環境変数GRADLE_OPTSとJAVA_OPTSで設定。後者はシステムグローバル。 | |
// たとえばプロキシ設定は後者、使用メモリ設定は前者のように使い分ける。 | |
// これらの設定は、gradleやgradlewスクリプトの頭に記述することも可能。 | |
// Could not find tools.jar.でビルドに失敗 | |
// JDK を見つけられない。 | |
// java-1.8.0-openjdk は JRE のみ。JDK は -devel に入っている。 | |
// $ sudo yum install java-1.8.0-openjdk-devel | |
// 7.1. Javaプラグイン | |
// 7.2. 基本的なJavaプロジェクト | |
// 例7.1 Javaプラグインの使用 | |
// 例7.8 Eclipseプラグイン | |
// 新しい書き方? | |
plugins { | |
id 'java' | |
id 'eclipse' | |
} | |
// 古い書き方? | |
apply plugin: 'java' | |
// gradle におけるディレクトリ構造の想定: | |
// src/main/java/ 製品のソースコード | |
// src/test/java/ テストのソースコード | |
// src/main/resources/ JAR に入れるべきリソースファイル | |
// src/test/resources/ テスト実行に使うクラスパスに入れるべきファイル | |
// build/ すべての出力ファイル | |
// build/libs/ JAR ファイルの出力先 | |
// 7.2.1. プロジェクトのビルド | |
// gradle build プロジェクトのフルビルドを行う | |
// gradle clean build ディレクトリ配下をすべて削除する | |
// gradle assemble コンパイル&JAR 生成、WAR 生成等。 | |
// ただしユニットテスト実行せず。 | |
// gradle check コンパイル&テスト。 | |
// gradle tasks タスク一覧の表示 | |
// 7.2.2. External dependencies | |
// リポジトリ: | |
// - プロジェクトが依存するものを取得 | |
// - プロジェクトのアーティファクトを公開 | |
// - (またはこの両方) | |
// 例7.3 (公開)Mavenリポジトリの追加 | |
repositories { | |
mavenCentral() | |
} | |
// 依存関係の追加: | |
// - 製品クラスはコンパイル時に commons コレクションに依存する | |
// - テストクラスはコンパイル時に junit に依存する | |
dependencies { | |
implementation group: 'commons-collections', name: 'commons-collections', version: '3.2.2' | |
testImplementation group: 'junit', name: 'junit', version: '4.+' | |
} | |
// 7.2.3. プロジェクトのカスタマイズ | |
// プロジェクトのプロパティの値を(デフォルトから)変更する | |
// gradle properties プロジェクトのプロパティ一覧の表示 | |
// 例7.5 MANIFEST.MFのカスタマイズ | |
// sourceCompatibility = 1.5 // deprecated | |
version = '1.0' | |
jar { | |
manifest { | |
attributes 'Implementation-Title': 'Gradle Quickstart', | |
'Implementation-Version': version | |
} | |
} | |
// 例7.6 テスト用システムプロパティの追加 | |
test { | |
systemProperties 'property': 'value' | |
} | |
// 7.2.4. JARファイルの公開 | |
// 例7.7 JARファイルの公開 - ローカルディレクトリに公開 | |
uploadArchives { | |
repositories { | |
flatDir { | |
dirs 'repos' | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment