この質問は、あるソースセットを別のソースセットに依存させることに似ています
メインの SourceSet の他に、testenv SourceSet もあります。testenv SourceSet のコードはメイン コードを参照するため、メイン SourceSet を testenvCompile 構成に追加する必要があります。
sourceSets {
testenv
}
dependencies {
testenvCompile sourceSets.main
}
sourceSets を依存関係として直接追加できないため、これは機能しません。これを行うための推奨される方法は次のとおりです。
sourceSets {
testenv
}
dependencies {
testenvCompile sourceSets.main.output
}
しかし、これは eclipse では正しく機能しません。gradle ビルド フォルダーを消去すると、gradle ビルドに依存するため、eclipse がコンパイルできなくなるためです。また、メイン コードを変更した場合、Eclipse で変更を有効にするには、gradle でプロジェクトを再構築する必要があります。
依存関係を正しく宣言するにはどうすればよいですか?
編集:
これ
sourceSets {
testenv
}
dependencies {
testenvCompile files(sourceSets.testenv.java.srcDirs, sourceSets.testenv.resources.srcDirs)
}
メインソースで動作しますが、.java ファイルを参照するようになったため、Annotation-Processor から生成されたクラスがありません:(