Wie kann ich eine Episode mit Maven generieren? Ich bekomme jetzt eine Fehlermeldung: an operand is missing (org.apache.cxf:cxf-xjc-plugin:2.4.0:xsdtojava:generate-sources:generate-sources)
XJC-Episode mit Maven
Hier mein Plugin:
<plugin>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-xjc-plugin</artifactId>
<version>2.4.0</version>
<configuration>
<extensions>
<extension>org.apache.cxf.xjcplugins:cxf-xjc-dv:2.4.0</extension>
</extensions>
</configuration>
<executions>
<execution>
<id>generate-sources</id>
<phase>generate-sources</phase>
<goals>
<goal>xsdtojava</goal>
</goals>
<configuration>
<xsdOptions>
<xsdOption>
<extension>true</extension>
<xsd>my.xsd</xsd>
<packagename>mypackage</packagename>
<extensionArgs>
<arg>-episode</arg>
</extensionArgs>
</xsdOption>
</xsdOptions>
</configuration>
</execution>
<execution>
<configuration>
<xsdOptions>
<xsdOption>
<extension>true</extension>
<xsd>my.xsd</xsd>
<extensionArgs>
<arg>-Xdv</arg>
</extensionArgs>
</xsdOption>
</xsdOptions>
</configuration>
</execution>
</executions>
Edit: Erstellung der Folge funktioniert gut. In einem anderen Projekt wird die JAR-Datei, die die Episode enthält, im Attribut angegeben. Aber ich bekomme eine Ausnahme: Error while parsing schema(s).Location [ file:/D:/workspace/XXX/src/test/resources/XXX.xsd{45,32}]. om.sun.istack.SAXParseException2: compiler was unable to honor this conversion customization. It is attached to a wrong place, or its inconsistent with other bindings. nested in com.sun.istack.SAXParseException2: (the above customization is attached to the following location in the schema)
Welches ist die xsd mit Episodendaten, die im Endprodukt enthalten sein wird. Es ist ein paar xjc: javaType-Adapterreferenz in dieser Zeile. Kann das Probleme verursachen?
Danke dies bereits funktioniert, aber jetzt renne ich in Probleme während der Verwendung der Episode. Irgendwelche Ideen dazu? siehe Bearbeiten. –
Soweit ich mich erinnere, um Glas mit Episode zu verbrauchen, müssen Sie es nur an wsimport oder xjc übergeben, es sollte keine zusätzlichen Parameter benötigt werden. Ich bin verwirrt, warum Sie Verweise auf "Datei:/D:/Arbeitsbereich" im Fehler-Stack haben. Haben Sie Verweise auf ein Schema, das sich irgendwo in Ihren Dateien befindet? Der Standardweg wäre, das Schema in Ihrem jar zu packen und es vom Klassenpfad aus zu referenzieren. – maximdim
Ich habe eine Bibliothek mit xsd und ein Projekt mit einem anderen xsd, das Elemente aus der Bibliothek xsd verwendet. Dies sind zwei verschiedene Projekte. Das endgültige Produktprojekt entpackt das xsd aus dem Glas für den endgültigen Versand an das Produktionssystem. Das Endprodukt xsd bezieht sich auf die Bibliothek xsd, deshalb gibt es eine relative Referenz, die Stapelspur druckt nur die absoluten Pfade. Das Entfernen der 'xjc: javaType'-Annotation löste das Problem, aber das ist immer noch ein seltsames Problem. In meinem Endprodukt pom passiere ich die Abhängigkeit für die Bibliothek, da sonst die Folge nicht berücksichtigt wird und Lib Code erstellt wird. –