我目前正试图让一个巨大的Android Studio项目进行编译。我的问题是我依赖于不同git仓库中的java类。我通过添加repo作为子模块来修复它。我是一个绝对的新手,所以我的方法是添加root,其中.java文件位于一个源集:
sourceSets {
main.java.srcDirs += '../../ROOT-OF-SOURCE-FILES/'
}
这解决了依赖关系。在“ROOT-OF-SOURCE-FILES”中是我的项目不需要的一堆文件,这也导致gradle不能构建,因为也没有android文件。 我尝试的下一件事是指向我依赖的特定文件夹,但它说“文件路径与包名不对应”
我的问题是如何添加我需要的类(包括它们的依赖项)或如何排除我不需要的东西(我也尝试使用gradle排除,但这不起作用)。
答案 0 :(得分:0)
您可以使用exclude
忽略源树的部分内容,请参阅https://discuss.gradle.org/t/how-can-i-exclude-certain-java-files-from-being-compiled/5287:
sourceSets {
main {
java {
srcDirs 'main/src'
exclude '**/package2/**'
}
}
}
另一种选择是创建一个指向Android Studio真正需要的分支的符号链接,例如
src/main/
package1
package3
package2
linked/package1 -> src/main/package1
和
sourceSets {
main {
java {
srcDirs 'linked'
}
}
}