java - 无需编译即可处理java文件中的注释

标签 java maven annotations

第一个 Maven 项目包含带注释类的源。

第二个 maven 项目包含注释处理器 (javax.annotation.processing.AbstractProcessor)。

我希望第二个项目在编译时处理第一个项目的源代码(带注释)并做一些事情。

我应该如何处理它?<​​/p>

我猜注释处理器不是正确的选择,因为它需要绑定(bind)到编译器......

另一个选项是扫描第一个项目中的所有 java 文件,加载它们(使用 class.forname)并处理注释。

你还能提出其他建议吗?

最佳答案

您可以提供 -proc:only 命令行参数来避免编译——不会输出 .class 文件。

javac documentation说:

-proc: [none, only]

Controls whether annotation processing and compilation are done. -proc:none means that compilation takes place without annotation processing. -proc:only means that only annotation processing is done, without any subsequent compilation.

关于java - 无需编译即可处理java文件中的注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41075493/

相关文章:

maven - 只有 1 个测试类正在运行并且 TestNG 执行挂起

Java注解: at variable initialization,但不能赋值?

java - 自定义注释不验证方法参数

java - HTTP 状态 500 - 实例化 Servlet 类 LoginServlet 时出错

java - Android 应用程序崩溃 NullPointerException

java - Spring boot - 在启动时禁用 Liquibase

java - Spring 对方法的安全注释是如何工作的?

java - 使用 InputStream 通过网络寻找流式音频的有效方法

java - 与 do while 循环和变量混淆

java - Microprofile 在构建时生成 Open-Api 文件