JAXB2 Maven Plugin es un plugin que usa JAXB para crear clases Java partiendo de esquemas XSD.
Generar un proyecto nuevo de tipo Maven
En Eclipse, creamos un nuevo proyecto de tipo “Maven Project”.
Poner en el pom.xml la dependencia
Añadimos al pom.xml la siguiente dependencia:
<dependency> <groupId>org.codehaus.mojo</groupId> <artifactId>jaxb2-maven-plugin</artifactId> <version>2.2</version> <type>maven-plugin</type> </dependency>
Guardamos y hacemos un Maven Update Project.
Configuración de la ejecución
Ahora creamos un tipo de ejecución, que será de tipo “xjc” (generar beans partiendo de esquemas). En JAXB hay más tipos de ejecución como, por ejemplo, crear esquemas a partir de beans de Java.
<execution> <id>xjc</id> <goals> <goal>xjc</goal> </goals> </execution>
Una vez creado el tipo de ejecución, crearemos una configuración (en este caso será común a todas las ejecuciones). Aquí especificamos de dónde cogeremos los esquemas y en qué paquete crearemos los beans.
<configuration> <sources> <source>${basedir}/src/main/resources</source> </sources> <packageName>com.example.myschema</packageName> </configuration>
En este punto es posible que aparezca un error en el pom.xml del tipo “null (org.codehaus.mojo:jaxb2-maven-plugin:2.2:xjc:xjc:generate-sources)”. Es un error que se solucionará una vez que ejecutemos el plugin.
Ejecutar el plugin en el proyecto
Para hacer esto, pulsamos con botón derecho sobre el nombre del proyecto y vamos a “Run as…/Maven generate-sources”.
Revisar éxito en la operación
Los beans de Java estarán en la carpeta donde le hayamos especificado (en este caso target/generated-sources/jaxb).
El código de este ejemplo se puede encontrar en https://github.com/luisgomezcaballero/JAXB2-Maven-Plugin.
So, what do you think ?