Fehler bei der Verwendung von XmlBeans generierten Klassen

8

Ich habe Klassen mit XMLBeans aus einer xsd-Datei generiert und in eine jar-Datei gepackt. dann habe ich dieses jar dem klassenpfad des projekts in der eclipse hinzugefügt und alles kompiliert und läuft gut. Ich habe eine Standalone-JAR-Datei von meinem Projekt mit Maven erstellt und wieder ist der Build erfolgreich, aber wenn ich versuche, es auszuführen, erhalte ich diesen Fehler:

%Vor%

Die fehlende Klasse befindet sich in dem Jar, das ich mit XmlBeans erstellt habe. Wie sage ich Maven, um es zu dem Jar hinzuzufügen, das es aus meinem Projekt erstellt?

    
Tomer 15.12.2011, 10:07
quelle

5 Antworten

3

Stellen Sie in Ihrer generierten JAR-Datei sicher, dass Sie die von Ihren XML-Beans erzeugten Klassendateien eingefügt haben.

Vom Stapel:

%Vor%

es schlägt vor, dass während der Kompilierungszeit die erforderlichen Klassendateien im Klassenpfad sind, aber in Ihrem eingebauten Jar fehlen diese Dateien.

Überprüfen Sie Ihre JAR-Datei, um zu sehen, ob diese Klassen vorhanden sind.

EDIT: Wie pro Frage umformuliert

Zum Erstellen von jar mit Abhängigkeiten in Maven verwenden Sie jar-with-dependencies option, Beispiel

Zwei sehr gute Referenz:

  1. Ссылка

  2. Ссылка

In der zweiten brauchen Sie keine Hauptklasse, wenn Ihr Jar kein ausführbares Jar ist

    
mprabhat 15.12.2011, 10:33
quelle
4

Wenn Sie diese Art von Fehler haben Die TypeSystemHolder.class, die von WSDL2Java generiert wird, wird nicht in Ihrem Klassenpfad platziert, um diesen Fehler zu vermeiden.

Kopieren Sie TypeSystemHolder.class aus dem Ordner "resource / schemaorg_apache_xmlbeans / system / s68C41DB812F52C975439BA10FE4FEE54".

Und fügen Sie TypeSystemHolder.class Datei in Ihren Klassenpfadordner (build / classes / schemaorg_apache_xmlbeans / system / s68C41DB812F52C975439BA10FE4FEE54) Ordner

ein     
Amit Yadav 16.01.2013 13:15
quelle
4

Beim Ausführen von WSDL2Java wird ein Verzeichnis namens resources erstellt. Kopieren Sie die schemaorg_apache_xmlbeans, die unter Ressourcen angezeigt wird, zum Klassenpfad Ihres Projekts. Dies sollte die Lösung sein.

    
Common Man 16.12.2013 05:59
quelle
3

Fügen Sie unter pom.xml das folgende Tag hinzu. Fehler wird gehen

%Vor%     
Manjunath 04.12.2012 05:22
quelle
0

Extrahieren Sie das JAR, in das Sie den schemaorg_apache_xmlbeans -Ordner einfügen möchten. Kopieren Sie den Ordner schemaorg_apache_xmlbeans im extrahierten Ordner (Ergebnis der JAR-Extraktion). Öffnen Sie die Eingabeaufforderung im extrahierten Ordner.

Erstellen Sie erneut jar mit dem Befehl jar cf. z. B. jar cf test.jar * ,  um alle Ordner einzuschließen.

Stellen Sie dieses jar bereit.

    
Abdul Mateen Abbasi 07.07.2017 16:09
quelle

Tags und Links