gpt4 book ai didi

java - 选择 Gradle 生成的源代码的目录

转载 作者:太空宇宙 更新时间:2023-11-04 13:33:47 24 4
gpt4 key购买 nike

我正在使用 Dagger 2 在我的 Gradle 项目中生成一些源代码。现在,这些源代码正在生成并与所有类文件一起添加到 ./build/classes/main 文件夹中。

  1. 如何选择一个文件夹来分隔所有生成的 .java 文件?
  2. 如何将该文件夹包含在我的 gradle Java 项目中,并让 IntelliJ 将这些文件夹视为源,以便我可以在我的项目中使用它们?

最佳答案

看起来像application plugin默认情况下仅使用一组特定的目录,混合构建风格来决定要编译哪些文件。

但是,我确实找到了an example build script创建一个 dagger 配置并操纵 gradle 将其用于生成的输出并将其添加到类路径中。它使用 dagger-compiler。

其核心是:

sourceSets {
dagger {
java {
srcDirs = ['src/dagger/java']
}
}
}

configurations {
compileDagger
}

compileJava {
description = "dagger annotation processor is loaded automatically from classpath"
sourceSets.dagger.java.srcDirs*.mkdirs()
classpath += configurations.compileDagger
options.compilerArgs += [
'-s', sourceSets.dagger.java.srcDirs.iterator().next()
]
}

clean {
description = "delete files in generated source directory tree"
delete fileTree(dir: sourceSets.dagger.java.srcDirs.iterator().next())
}

dependencies {
ext.daggerVersion = "2.0.1"

compile(
"com.google.dagger:dagger:${daggerVersion}",
"com.google.guava:guava:18.0")

compileDagger(
"com.google.dagger:dagger-compiler:${daggerVersion}")

}

对于IntelliJ,插件应该通过正常构建idea项目自动添加任何srcSet,因此不需要额外的配置,只需重新生成它即可。

关于java - 选择 Gradle 生成的源代码的目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31910323/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com