我正在尝试让 intellij 与我的功能性 gradle build sans 一起使用各种其他插件。 various plugins我已经将中断支持与我需要使用的另一个插件一起使用(除其他问题外,它会在默认位置查找生成的源)。我已经在这个问题上工作了一段时间并且取得了一定的成功,但总是有一些警告。许多插件不能很好地与测试目录中的 apt 等配合使用。
Enabling annotation处理器并将输出目录设置为/build/classes/main 和/build/classes/test 不会产生结果,尽管这是 gradle 插件似乎放置由包含 dagger2- 生成的 .java 和 .class 文件的地方编译器。
我可以通过创造性地调整模块配置中生成的源集参数来使一切正常运行,但这永远不会存在。也就是说,如果您关闭应用程序,则必须重新配置选项。
如有任何帮助,我们将不胜感激。
最佳答案
我通过以下步骤解决了这个问题: 1) 修改compileJava任务指定目标源位置
compileJava {
options.compilerArgs+= [
"-s", project.projectDir.absolutePath + '/src/main/generated'
]
}
2)告诉 IntelliJ Idea 这些文件是源
idea {
module {
// generatedSourceDir does not work for some reason
sourceDirs += file(project.projectDir.absolutePath + '/src/main/generated')
}
}
P.S Idea 插件应该被应用:
apply plugin: 'idea'
关于java - Dagger2 + gradle + intellij : generated classes are not found and treated as a compile error/won't autocomplete,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33332457/