Ich habe festgestellt, dass zwei JAXB- Plugins für Maven 2 mit unterschiedlichen Konfigurationen existieren.
Der eine ist von Sun: http://jaxb.dev.java.net/jaxb-maven2-plugin/ , der andere von Mojohaus: http://mojohaus.org/jaxb2-maven-plugin/
Welches dieser beiden Plugins kann empfohlen werden?
Danke Matt. Bei meinem kleinen Forschungsprojekt stellte ich fest, dass es ein ganz anderes Plugin gibt, das von den Sunners kommt:
<groupId>com.sun.tools.xjc.maven2</groupId>
<artifactId>maven-jaxb-plugin</artifactId>
und das:
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
und immer noch der von Codehouse.
maven-jaxb2-plugin
wird jetzt auf GitHub gehostet . Die Dokumentation befindet sich im Wiki .Ich habe kürzlich die drei oben genannten Plug-Ins ausprobiert (auch hier enthalten):
Am Ende habe ich eine vierte Option verwendet: Das CXF XJC Maven Plugin http://cxf.apache.org/cxf-xjc-plugin.html
Wenn mir etwas fehlt, das ich gerne wissen würde, aber die Konfiguration für das, was ich versuchte, einfacher zu sein schien und es mir leichter ermöglichte, mit der Erzeugung doppelter Klassen innerhalb desselben Namespace umzugehen - ähnlich wie bei dieser Frage: Gibt es eine Wie kann man mit doppelten Elementdefinitionen in mehreren .xsd-Dateien in JAXB umgehen?.
Ich habe jetzt eine detaillierte Kontrolle über jede eingehende XSD und das entsprechende Java-Paket. Hier ist eine Beispielkonfiguration in der Nähe der von mir verwendeten.
quelle
Ich bin der Autor von maven-jaxb2-Plugins .
Das maven-jaxb2-Plugin verwendet derzeit JAXB 2.1. In den nächsten Versionen werden wir auch die Versionen JAXB 2.0 und JAXB 2.2 bereitstellen.
Überprüfen Sie die Funktionen für die Diskussion "Welches Plugin ist besser?" Und entscheiden Sie selbst. Lassen Sie mich wissen, wenn Sie einige Funktionen vermissen.
quelle
quelle
Eine leichte Tangente: Es gab ein Problem mit der Verwendung des Maven-Jaxb2-Plugins mit Eclipse Indigo, das ich hier gepostet habe . Ein Fix (Erweiterung) ist seit kurzem verfügbar.
Dies soll der Empfehlung des Maven-Jaxb2-Plugins gegenüber dem Maven2-Jaxb-Plugin überhaupt nicht widersprechen. Ich weiß es nicht, aber ich gehe davon aus, dass das maven2-jaxb-Plugin das gleiche Problem hat, wahrscheinlich ungelöst.
quelle
Ich würde vermuten, dass eines für die ursprüngliche JAXB-Spezifikation und das Codehaus für die JAXB 2.1-Spezifikation ist (und wenn dev.java.net dieses Jahrhundert einige Zeit laden würde, könnte ich sicher sagen).
quelle