Ich erhalte eine RuntimeException, während ich Code ausführe, der von generierten xmlbeans-Klassen abhängt. Ich kann nicht herausfinden, ob das ist:
Die xbean.jar-Version ist in der Build- und Ausführungsumgebung identisch. Wer hat das schon mal gesehen oder Ideen?
Danke.
%Vor% 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.
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:
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.
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.
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.