我有两个 Maven 项目:
- 第一个定义了注解、注解处理器和提供者配置文件以通过 ServiceLoader API 触发注解处理器。
- 另一个依赖于第一个并定义了一些类和接口,其中一个使用第一个项目中定义的注解进行了注解。
我用 调用第二个项目的构建(在构建并安装了第一个项目之后)mvn clean && mvn compile
,只是为了确保编译将发生并且注释处理将运行。它按预期工作:简单的注释处理器只是在target/classes/
包含一些虚拟数据的目录中生成一个资源文件。
当我尝试使用输出一些信息时,processingEnv.getMessager().printMessage(...)
我开始遇到一些麻烦。如果我使用Diagnostic.Kind.ERROR
,则构建停止并打印消息,正如我所期望的那样。但是,与任何其他Kind
(例如NOTE
或WARNING
),消息不会写在屏幕上!
关于我的环境的一些信息:
Kubuntu 12.10
Linux 3.5.0-17-generic
Apache Maven 3.0.4 (r1232337; 2012-01-17 06:44:56-0200)
Java version: 1.7.0_09, vendor: Oracle Corporation
我没有明确声明maven-compiler-plugin
任何地方的版本,所以它必须使用默认版本(2.3.2?我不确定)。
如何Kind
在此设置中启用所有消息的输出?(即通过maven启动注解处理器)