本文介绍了更改Gradle中生成的代码的输出目录的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

项目包含注释处理器,它在编译期间生成Java代码。默认情况下,gradle输出将源文件生成到 build / classes 目录中。这会导致IntelliJ发现新生成的源文件时出现问题。



是否有任何直接的配置gradle的方式将源文件输出到另一个目录中?例如 $ buildDir / gen / main / java $ buildDir / build / generated / main / java ? >) docs.oracle.com/javase/7/docs/technotes/tools/windows/javac.htmlrel =nofollow noreferrer> documentation )。

Example of build.gradle

compileJava {
    options.compilerArgs << "-s"
    options.compilerArgs << "$projectDir/generated/java"

    doFirst {
        // make sure that directory exists
        file(new File(projectDir, "/generated/java")).mkdirs()
    }
}

clean.doLast {
    // clean-up directory when necessary
    file(new File(projectDir, "/generated")).deleteDir()
}

sourceSets {
    generated {
        java {
            srcDir "$projectDir/generated/java"
        }
    }
}

This code snippet does next:

  • creates and specifies directory as output for generated code
  • deletes generated sources if clean task is invoked
  • adds new source set

Update

Use gradle apt plugin instead.

这篇关于更改Gradle中生成的代码的输出目录的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-03 12:39