【发布时间】:2019-04-03 01:46:20
【问题描述】:
我正在尝试为 Android 配置构建。该项目有多种风格,在一种风格中,我想替换 main 中的一些类。结构是这样的:
main - MyClass.java
flavorA, flavorB... flavorF 使用 main 的 MyClass.java,没有覆盖
flavorG 需要自己的 MyClass.java
我不想将 MyClass.java 复制到每个风味的目录中并从 main 中完全删除它,那将是不可维护的。有没有办法使用排除命令来完成这个?比如……
+ src
+ main
+ java
MyClass.java
other common files
AndroidManifest.xml
+ flavorA
+ java
other flavor-specific files
AndroidManifest.xml
+ flavorG
+ java
MyClass.java
other flavor-specific files
AndroidManifest.xml
使用这样的 gradle 设置...
productFlavors {
flavora {
}
...
flavorg {
}
}
sourceSources {
flavora {
}
flavorb {
}
...
flavorg {
main.java {
exclude 'com/myapp/mypackage/MyClass.java'
}
}
}
以上不起作用,我做错了什么吗?还有其他选择吗?
【问题讨论】: