我正在尝试在Android中生成预处理的源代码,我正在通过Gradle任务将一些正则表达式应用于我的代码,并将修改后的代码复制到build文件夹中的新文件夹,这是有效的正确,但缺少的部分是在预处理代码并设置Android任务的源之后,gradle会抱怨重复的类。我想在某些特定情况下替换主srcDir(当构建是特定的Release构建时)但是我不能覆盖类的路径以避免代码重复。我怎样才能做到这一点?
我的gradle任务如下:
task filterComments(type: Copy) {
from "$projectDir/src/main/java"
into "$projectDir/build/generated-src"
filter { line -> line.replaceAll('LoremIpsumDolor', 'LOREMIPSUMDOLOR') }
}
tasks.withType(JavaCompile) {
task -> if (task.name.contains("compileRelease")) {
task.dependsOn filterComments
task.source "$projectDir/build/generated-src"
}
}