RuntimeException von xmlbeans - kann das kompilierte Schema nicht finden

9

Ich erhalte eine RuntimeException, während ich Code ausführe, der von generierten xmlbeans-Klassen abhängt. Ich kann nicht herausfinden, ob das ist:

  • mir fehlt etwas während der Code-Generierung oder Verpackung
  • eine Laufzeitabhängigkeit fehlt
  • eine irreführende Fehlermeldung, und ich sollte anderswo suchen.

Die xbean.jar-Version ist in der Build- und Ausführungsumgebung identisch. Wer hat das schon mal gesehen oder Ideen?

Danke.

%Vor%     
findango 25.07.2009, 00:19
quelle

4 Antworten

1

Die Antwort von John war ein guter Hinweis für mich. Ich generierte Java-Klassen mit xmlBeans und kopierte die Quelldateien manuell aus dem "noNamespace" in meinem Projekt, um sie zu modifizieren. leider habe ich nicht erkannt, dass es im Ordner "schemaorg_apache_xmlbeans" auch generierte Klassendateien gab und diese nicht kopiert hat.
Nach der Umstellung auf die generierte JAR-Datei hat alles gut funktioniert.

    
Jörg Müller 31.01.2012 17:02
quelle
0

Ich habe die Bibliothek vorher noch nie benutzt, aber ich kann irgendwie erraten, was vor sich geht. Mit diesem Qualifikationsmerkmal (d. H. Ich erfinde es nur, aber es waren 7 Stunden und niemand hat etwas erfunden) ...

Das Offensichtliche ausdrücken: Etwas wurde irgendwo kompiliert und kann nicht geladen werden. Ich glaube nicht, dass das etwas in der Jar-Datei ist; Ich schätze, es ist eine Ihrer Ressourcen, die an einem Ort kompiliert / zwischengespeichert wurde.

Ich würde entweder vermuten:

  • es ist an einem Ort kompiliert, von dem es nicht geladen werden kann (versuchter Klassenpfad / config)
  • Die Versionierung ist falsch zwischen dem, was kompiliert wurde und was geladen werden soll

Haben Sie zwischen der Kompilierung und dem Laden / Ausführen etwas geändert (z. B. Schemaversion?)?

Können Sie die kompilierte Version entfernen und neu kompilieren und dann ein erneutes Laden versuchen?

Können Sie die kompilierte Version im Dateisystem finden?

Um dies zu tun, könnten Sie versuchen

grep "s2B8331230CBD98F4933B0B025B6BF726" 'finden.'

aus einem geeigneten Verzeichnis.

Können Sie eine md5 für die Klasse / Ressource erstellen, die Probleme sowohl in der Kompilierungs- als auch in der Laufzeitumgebung verursacht? Stimmen sie überein?

Hoffe, dass etwas darin hilft oder einen Gedanken auslöst.

    
Ian 25.07.2009 08:20
quelle
0

Ich habe dieses Problem oft gesehen, als es ein Skript (ant, maven, ...) gab, das die XMLBeans-Kompilierung verarbeiten würde und ein anderer Mechanismus zum Kompilieren und Ausführen des restlichen Codes verwendet wurde. Manchmal löscht ein Stück die generierten Dateien, nach denen XMLBeans in Ihrem Stack-Trace sucht, hinterlässt jedoch die generierten XMLBeans Java-Dateien, sodass alles kompiliert und gut aussieht.

Ich habe das auch gesehen, wenn ich die Option verwende, um die Quelldateien, aber nicht die Klassendateien auszugeben. Die Nicht-Java-Quelldateien werden nur direkt in den Klassenordner oder die JAR-Datei generiert, die von XMLBeans generiert werden.

    
John Meagher 28.07.2009 01:59
quelle
0

Diese Klassendateien werden im Verzeichnis resources / schemaorg_apache_xmlbeans generiert. Ich habe xmlbeans Verhalten gesehen, wo das generierte Ameisen-Skript es versäumt hat, dieses Verzeichnis in das jar zu integrieren, das es erstellt (vielleicht aufgrund eines Fehlers?). Überprüfen Sie, ob es in das jar eingeschlossen wurde. Sie können die Befehlszeilenoptionen für die Codegenerierung manuell umschreiben oder überprüfen.

    
anon 09.07.2010 09:08
quelle

Tags und Links