有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Dagger2+gradle+intellij:未找到生成的类,并将其视为编译错误/不会自动完成

我正试图让intellij使用各种其他插件来很好地处理我的功能性gradle build SAN。我使用的variousplugins与我需要使用的另一个插件一起使用了break支持(它在默认位置查找生成的源代码,还有其他问题)。我已经在这个问题上工作了一段时间,并取得了轻微的成功,但总是有警告。许多插件在测试目录中不能很好地使用apt,等等

Enabling annotation处理器,并将输出目录设置为/build/classes/main和/build/classes/test不会产生结果,尽管gradle插件似乎在这方面放置了。java和。通过包含dagger2编译器生成的类文件

通过创造性地调整模块配置中生成的源代码集参数,我可以让一切都顺利进行,但这永远不会发生。i、 e.如果关闭应用程序,则必须重新配置选项

任何帮助都将不胜感激


共 (1) 个答案

  1. # 1 楼答案

    我通过以下步骤解决了这个问题: 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.应用的创意插件:

    apply plugin: 'idea'