Estoy usando JSR 269 como una forma de analizar el código durante la compilación y fallar si es necesario. Tengo problemas para mostrar la salida de mi procesador de anotaciones en maven (Ant muestra la salida) Estoy usando javax.annotation.processing.Messager para mostrar advertencias y errores, pero en maven no veo que sea salida . (Sé que funciona, porque genera código como debería). Alguna idea?Salida de procesador de anotación en maven
10
A
Respuesta
12
Creo que se está encontrando con un error Maven o mejor un error en el plugin del compilador - MCOMPILER-66. Cuando se trata de procesamiento de anotación, el complemento del compilador tiene varios problemas, por ejemplo, también MCOMPILER-62. Realmente, la mejor opción es inhabilitar el procesamiento de anotaciones para el plugin del compilador y usar el maven-processor-plugin. En este blog post puede ver cómo usarlo. Se ve así:
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
<compilerArgument>-proc:none</compilerArgument>
</configuration>
</plugin>
<plugin>
<groupId>org.bsc.maven</groupId>
<artifactId>maven-processor-plugin</artifactId>
<version>1.3.7</version>
<executions>
<execution>
<id>process</id>
<goals>
<goal>process</goal>
</goals>
<phase>process-sources</phase>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-jpamodelgen</artifactId>
<version>1.1.0.Final</version>
<scope>compile</scope>
</dependency>
</dependencies>
</plugin>
Tenga en cuenta también cómo la dependencia del procesador de anotación se limita al plugin solamente.
Cuestiones relacionadas
- 1. ¿Cómo usar un procesador de anotación personalizado con Maven 2?
- 2. Escribiendo un procesador de anotación para maven-processor-plugin
- 3. Cómo escribir un procesador de anotación Java?
- 4. ¿Cómo compilar el procesador de anotación con Ant?
- 5. procesador de anotación Java 6 Adelante compatible y SupportedSourceVersion
- 6. Java 6 - procesador de anotación y el código Además
- 7. salida de JUnit en Maven informa
- 8. Configuración de la configuración de procesamiento de anotación Java 6 para el compilador de eclipse con maven
- 9. Enviar la salida de maven al archivo
- 10. ¿Cómo puedo crear un procesador de anotación que procese una variable local?
- 11. ¿Cómo escribir pruebas unitarias automatizadas para el procesador de anotación Java?
- 12. Java procesamiento 6 de anotación - conseguir una clase desde una anotación
- 13. Invocar mediante programación los procesadores de anotación
- 14. Java 6 configuración de procesamiento de anotación con Ant
- 15. teclado procesador de eventos En JavaScript
- 16. Procesador XSLT de memoria eficiente
- 17. salida falló detalles de la prueba a la salida estándar utilizando Maven segura
- 18. Anotación - Leer el valor del elemento en tiempo de compilación
- 19. La salida de autocompilación de Eclipse interactúa con la salida de compilación de la línea de comandos de Maven
- 20. Hilos por procesador
- 21. Cómo capturar un Enum de un AnnotationValue en un procesador de anotaciones
- 22. C pre-procesador de macros de expansión
- 23. nativo procesador OpenGL
- 24. Personalizar procesador predeterminado radioselect
- 25. Framework de anotación PHP
- 26. spring @ Anotación de Transactional
- 27. Anotación condicional de Django
- 28. ¿cómo depurar los procesadores de anotación Java usando intellij?
- 29. Maven tomcat: run goal y jsf anotación basado en componente/convertidor/validador escaneado
- 30. @UniqueConstraint anotación en Java
¿Cómo funciona el procesador de mensajes de salida? ¿Cómo lo invocas? –
¿Se muestra el resultado si invocas maven con el parámetro '-X'? –
@matt b Estoy usando javax.annotation.processing.Messager para mostrar advertencias: '_messager = processingEnv.getMessager();' @Jorn: No utilizo el parámetro -X, el procesador aparece como un proveedor de servicios – iGili