maven 2 - dependency - ¿Cómo configurar IntelliJ IDEA y/o Maven para agregar directorios automáticamente con el código fuente de Java generado con jaxb2-maven-plugin?
maven intellij (4)
El código generado, utilizando jaxb2-maven-plugin, faltaba para mí en Intellij 2017.1 mientras que Eclipse Neon lo creó. Se corrigió desde el menú contextual del módulo seleccionando ''Maven -> Generar fuentes y actualizar carpetas''.
En nuestro proyecto, estamos usando jaxb2-maven-plugin
para generar código fuente Java a partir de un esquema XML, lo que hace que nuestro módulo Maven requiera un directorio de código fuente adicional (en nuestro caso target/generated/main/java
). Hasta la fecha he estado usando Eclipse y maven-eclipse-plugin
para importar todos los proyectos al espacio de trabajo de Eclipse. El complemento puede (de alguna manera) agregar el directorio con el código fuente generado automáticamente al archivo .classpath de Eclipse.
Recientemente trato de cambiar a (¿jugar con?) IntelliJ IDEA 9 (por lo que soy un novato en este entorno) y he notado que no se agrega un directorio fuente adicional durante el proceso de importación de IDEA ...
¿Hay alguna manera de configurar IDEA / Maven para que la importación del directorio con el código fuente generado automáticamente?
La convención con Maven es generar código en target/generated-sources/<tool>
, por ejemplo target/generated-sources/jaxb2
Siga esta convención e IDEA agregará la carpeta como carpeta de origen (vea IDEA-53198 ).
Probar con maven-jaxb2-plugin . Si no funciona, entonces es un problema de IDEA.
En Maven puedes agregar nuevas raíces de origen por configuración. Los complementos de Maven pueden hacer esto programáticamente. Esto es seguro para el caso de maven-jaxb2-plugin
. Entonces, si IDEA no lo reconoce, entonces hay un problema en ese lado.
Puedes usar el complemento de ayuda para la construcción de Maven. Se encuentra en http://www.mojohaus.org/build-helper-maven-plugin/
Permite configurar raíces de origen adicionales. Y la integración de Maven de IntelliJ agregará la nueva raíz de origen. Estamos usando esta característica en bastantes compilaciones y funciona bien. Probado con vers. 13 de la IDEA de IntelliJ.