compileDebugJava - 不是增量的。无法推断源目录

时间:2015-04-19 15:18:21

标签: android gradle incremental-build

自Gradle 2.1起,现在支持Java源代码的增量编译check this

我使用下面的代码片段来启用它

afterEvaluate {

    android.applicationVariants.each { variant ->
        variant.javaCompile.options.incremental = true
    }
}

但我收到了警告信息,

  

:App:compileDebugJava - 不是增量的。无法推断出来源   目录。

请建议我应该怎么做才能摆脱它

2 个答案:

答案 0 :(得分:2)

是的,Android Build Plugin存在问题,请点击此处:

  

我们使用自定义源集,因此在我们可以之前不太可能修复此问题   停止使用它们。

http://code.google.com/p/android/issues/detail?id=82411并在此处提及

https://discuss.gradle.org/t/faster-incremental-builds/552/10

修复后,将其用于Android,将其添加到allProjects

allProjects {
    tasks.withType(JavaCompile) {
        configure(options) {
            incremental = true
        }
    }
}

如果你看到这个,你必须先建立你的项目:

  

compileDebugJava - 不是增量的(例如输出已经改变,没有   以前的执行等。)。

如果你看到这个,根据isse使用了错误的sourceSets(参见链接):

  

compileDebugJava - 不是增量的。无法推断源目录。

来自Java项目的示例:

apply plugin: 'java'
compileJava {
    //enable compilation in a separate daemon process
    options.fork = true

    //enable incremental compilation
    options.incremental = true
}

来源: http://gradle.org/docs/current/dsl/org.gradle.api.tasks.compile.JavaCompile.html

答案 1 :(得分:0)

我使用过反应原生的插件包时出现了这样的问题。我跑了react-native link,似乎已经解决了这个问题。