试图将我的productFlavor命名为“ test”,并收到错误消息:
ERROR: ProductFlavor names cannot start with 'test'
从源代码中,我看到了简单的检查:
private void addBuildType(BuildType buildType) {
if (buildType.name.startsWith("test")) {
throw new RuntimeException("BuildType names cannot start with 'test'")
}...
}
似乎可以使用“ myTest”,“ aTest”等名称,但不能使用“ test1”,“ test2”等名称。 有任何可能的原因吗?谢谢。
答案 0 :(得分:2)
正如您在此Google repository第93行中所看到的
private void addBuildType(BuildType buildType) {
if (buildType.name.startsWith("test")) {
throw new RuntimeException("BuildType names cannot start with 'test'")
}
if (productFlavors.containsKey(buildType.name)) {
throw new RuntimeException("BuildType names cannot collide with ProductFlavor names")
}
def sourceSet = project.sourceSets.add(buildType.name)
BuildTypeData buildTypeData = new BuildTypeData(buildType, sourceSet, project)
project.tasks.assemble.dependsOn buildTypeData.assembleTask
buildTypes[buildType.name] = buildTypeData
}
因此,addBuildType
方法有其自身的例外,即不使用test
name。你不能用这个。以及他们为何做出此决定。除了Google,没人能回答。