在 java 中测试注解处理器

Testing of annotation processor in java

我正在开发注释处理器,现在我正在执行后续测试步骤:

  1. 提交更改并将更改推送到 github
  2. 使用 jitpack 构建和发布处理器
  3. 在 Idea 中刷新 gradle。 build.gradle 在我的测试项目中:
repositories {
    maven { url 'https://jitpack.io' }
}
configurations.all {
    resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
}
dependencies {
    compileOnly 'com.github.hohserg1:MyAnnotationProcessor:main-SNAPSHOT'
}
  1. 尝试构建

非常可怕。如何将其缩小为“按 运行 按钮”?

你需要你的处理器、你的注解和应用程序分别在不同的模块中是不同的依赖,你这样做是为了避免处理器和应用程序之间的循环依赖,也帮助你避免包含应用程序工件中的处理器 类。

另外,请注意,当您开发注释处理器时,您不会测试处理器本身,而是测试从该处理器生成的代码,如果生成的代码可以正常工作,那么处理器也可以按预期工作。