我遵循docs指令,也是类似的答案,但是当我尝试构建和运行时,我仍然得到ClassA.java的重复类错误。产品风味重复类错误
我有两种风格的主要源集合和每个类有不同的风味,在自由或专业源集(不主要)中有不同风味的类。
任何建议???
项目目录结构:
project/
|
|---src/
|---free/
| |
| |---java/
| | |---com.abc
| | |---innerpkg
| | |-----classA.java
| |---res/
| |---AndroidManifest.xml
|
|---main
| |
| |---java/
| | |---com.abc
| | |-----classC.java
| | |-----classD.java
| |---res/
| | |---drawable/
| | |---layout/
| | |---values/
| |
| |---AndroidManifest.xml
|
|---pro/
| |
| |---java/
| | |---com.abc
| | |---innerpkg
| | |-----classA.java
| |---res/
| |---AndroidManifest.xml
摇篮文件:
...
android {
...
flavorDimensions "flavor" // changes to one dimension instead of: flavorDimensions "free","pro"
productFlavors {
free {
dimension "flavor"
applicationId "com.abc"
signingConfig signingConfigs.configFree
}
pro {
dimension "flavor"
applicationId "com.abc.pro"
minSdkVersion 16
targetSdkVersion 27
versionCode 1
versionName "1.0.0"
signingConfig signingConfigs.configPro
}
}
sourceSets {
main {
jni.srcDirs = []
jniLibs.srcDir "src/main/jniLibs"
java.srcDirs = ['src/main/java']
}
free {
java.srcDirs = ['src/main/java', 'src/free/java']
manifest.srcFile "src/free/AndroidManifest.xml"
}
pro {
java.srcDirs = ['src/main/java', 'src/pro/java']
manifest.srcFile "src/pro/AndroidManifest.xml"
}
}
}
这将如何帮助?我需要同一个班级的不同版本。 另外我对“共享”类没有问题,我只是将它们放在主源集 –