在Android Studio项目中,我有不同的java模块,希望根据产品风格编译它们(即 flavor1 中的 feature1 和 feature2,feature3 flavor2 中的。还有一些通用代码,需要始终编译 这是我的build.gradle的一部分:
productFlavors {
flavor1 {
sourceSets {
main.java.srcDirs += [
'path_to_my_dir/feature1'
]
}
}
flavor2 {
sourceSets {
main.java.srcDirs += [
'path_to_my_dir/feature2',
'path_to_my_dir/feature3'
]
}
}
}
sourceSets {
main.java.srcDir 'path_to_my_dir/common'
}
问题是所有功能都为任何风味进行编译 像这样的代码的不同变体也不起作用:
flavor2 {
main.java.excludes += [
'path_to_my_dir/feature1'
]
}
}
有关如何使其发挥作用的任何想法?
答案 0 :(得分:0)
它的结构略有不同:
sourceSets {
main {
java.srcDir 'path_to_my_dir/common'
}
flavor1 {
java.srcDirs += [
'path_to_my_dir/feature1'
]
}
flavor2 {
java.srcDirs += [
'path_to_my_dir/feature2'
'path_to_my_dir/feature3'
]
}
}