/jaxb-multi-version

Example maven project to compile the same XSD schema targeting multiple JAXB versions

Generate Bindings for Multiple JAXB Versions

The environment requires JDK 1.7+ and a recent 3.0 version of maven.

$ java -version
java version "1.7.0_72"
Java(TM) SE Runtime Environment (build 1.7.0_72-b14)
Java HotSpot(TM) 64-Bit Server VM (build 24.72-b04, mixed mode)

$ mvn -version
Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d16e1f08391b666bc1e9; 2014-02-14T17:37:52+00:00)
Maven home: /opt/apache-maven-3.2.1
Java version: 1.7.0_72, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-7-oracle/jre
Default locale: en_US, platform encoding: ISO-8859-1
OS name: "linux", version: "3.13.0-43-generic", arch: "amd64", family: "unix"

JAXB 2.0 Bindings

mvn clean install -Pjaxb20

Results in Car.java:

//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs 
...

JAXB 2.1 Bindings

mvn clean install -Pjaxb21

Results in Car.java:

//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-2 
...

JAXB 2.2 Bindings

mvn clean install -Pjaxb22

Results in Car.java:

//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.11 
...