【发布时间】:2018-08-30 06:53:42
【问题描述】:
我在 build.gradle 中定义了多种构建类型。在变体窗口中,我选择了构建变体(例如 debugAPI23)。我预计只会执行一种构建类型的代码。但在 Gradle 控制台中,我可以看到所有构建类型的输出。
如您所见,我正在尝试删除每种构建类型的特定文件。但是每次执行所有构建类型时。所以最后我错过了我选择的构建类型应该存在的文件。
android {
buildTypes {
debug {
println "build type debug"
debuggable true
signingConfig signingConfigs.debug
sourceSets {
main.java {
exclude '/cz/kctdata/kmf/Reader/KMFReaderCN51A60.java'
}
main.java.getIncludes().each { println "Added include: $it" }
main.java.sourceFiles.each { println "File in source set: " + it }
}
}
release {
println "build type release"
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
sourceSets {
main.java {
exclude '/cz/kctdata/kmf/Reader/KMFReaderCN51A60.java'
}
main.java.getIncludes().each { println "Added include: $it" }
main.java.sourceFiles.each { println "File in source set: " + it }
}
}
debugAPI23 {
println "build type debugAPI23"
debuggable true
signingConfig signingConfigs.debug
sourceSets {
main.java {
exclude '/cz/kctdata/kmf/Reader/KMFReaderCN51A42.java'
}
main.java.getIncludes().each { println "Added include: $it" }
main.java.sourceFiles.each { println "File in source set: " + it }
}
}
releaseAPI23 {
println "build type releaseAPI23"
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
sourceSets {
main.java {
exclude '/cz/kctdata/kmf/Reader/KMFReaderCN51A42.java'
}
main.java.getIncludes().each { println "Added include: $it" }
main.java.sourceFiles.each { println "File in source set: " + it }
}
}
}
}
我不能使用特定于构建类型的文件夹,因为我有更多构建类型,并且一些文件应该以多种构建类型呈现。我不想在我的项目中拥有同一个文件的多个副本。
【问题讨论】:
标签: android gradle android-build-type