java
プラグインは、プロジェクトのディレクトリ構成が次のようになっていると想定しています。
これは、Gradle のソースセットの設定(インプットファイルの置き場所の設定)がデフォルトでこのようになっているからです。
src/main/java
および src/test/java
build
このソースセットの設定を変更するとこで、プロジェクトの都合に合わせたディレクトリ構成に変更できます。
例えば、製品用の Java ソースコードを src
ディレクトリ、テスト用の Java ソースコードを test
ディレクトリ、出力先を out
ディレクトリに変更するには以下のように設定します。
apply plugin: 'java'
sourceSets {
main {
java {
srcDirs = ['src']
}
}
test {
java {
srcDirs = ['test']
}
}
}
buildDir = 'out'
こう書くこともできます。
apply plugin: 'java'
sourceSets.main.java.srcDirs = ['src']
sourceSets.test.java.srcDirs = ['test']
buildDir = 'out'
この設定により、下記のようなパスに置かれた Java ソースコードがコンパイルされるようになります。
src/com/example/Main.java
正確には、srcDirs
メソッドは、ディレクトリを変更するのではなく追加 します。
なので、もともとの src/main/java
ディレクトリ以下に置かれている Java ソースコードは、相変わらずコンパイルの対象になります。
ちなみに、出力先ディレクトリ (buildDir
) を変更しておくと、gradle clean
コマンドでクリーンナップされるディレクトリも変更されます。