Die JBoss-Bereitstellung verwendet weiterhin die alte Dateiversion, auch nachdem neue Dateien aktualisiert wurden

Die JBoss-Bereitstellung verwendet weiterhin die alte Dateiversion, auch nachdem neue Dateien aktualisiert wurden

Es gab ein Problem mit einem von uns bereitgestellten Webdienst. Benutzer konnten sich nicht anmelden und unsere Protokolle zeigten Fehler und Ausnahmestapelverfolgungen an. Dev arbeitete an dem Problem und stellte ein neues Paket zur Bereitstellung bereit.

Wenn ich das neue Paket bereitstelle und wir versuchen, es zu verwenden, erhalten wir immer nochdie exakt gleichen Fehler und Ausnahme-Stacktraces, die wir vorher bekommen haben, bis hin zu den gleichen Dateien/Zeilennummern im Stacktrace. Einige der Zeilennummern verweisen nicht einmal auf etwas, das den Fehler verursachen könnte, sondern auf ein Leerzeichen in einer Zeilennummer, die früher die problematische Zeile enthielt, die den Fehler verursacht hat.

Aufheben der Bereitstellung/erneute Bereitstellung, das Gleiche.

Starten Sie JBoss neu, dasselbe, Bereitstellung aufheben/erneut bereitstellen, dasselbe.

Rückgängig machen, die Datei, die den Fehler verursacht, nach „file.jar.bak“ verschieben, damit sie „nicht existiert“, dann erneut bereitstellen … Bereitstellung schlägt fehl (gut, das sollte sie an diesem Punkt) – jetzt gibt es einen Fehler, dass Bereitstellung nicht möglich ist, weil die Datei nicht gefunden werden kann. OK, das ist gut, zumindest wird die Tatsache berücksichtigt, dass ich die Datei ändere. Aber jetzt verschieben Sie „file.jar.bak“ zurück nach „file.jar“ und führen erneute Bereitstellung durch, und es werden wieder dieselben Fehler/Zeilennummern wie bei der alten Bereitstellung angezeigt, statt bei der neuen!

Was ist los??? Vielleicht ist das Alte irgendwo zwischengespeichert? Was könnte das sonst noch verursachen?

Antwort1

seufzenIch fühle mich jetzt dumm. Nachdem ich meine Frage eingetippt hatte, während ich darüber nachdachte und sie bearbeitete, dämmerte mir plötzlich etwas und ich korrigierte es. Ich werde es trotzdem posten und mitteilen, was mein dummer Fehler war, falls es anderen hilft ...

Wir befinden uns in der Endphase einer Migration von JBoss 5 auf eine neuere Version. Neuere Versionen sind strenger, was die Strukturierung bestimmter Verzeichnisstrukturen oder Dateien in Ihren „ear“-Archiven angeht. Unsere Jar-Dateien befanden sich früher im Stammverzeichnis des Archivs, aber um den neuen, strengeren Richtlinien zu entsprechen, müssen sie in einem „lib/“-Verzeichnis innerhalb des Archivs liegen und nicht nur im Stammverzeichnis.

Nun, das lib-Verzeichnis wurde erstellt und die jar-Dateien wurden dort abgelegt - sogar von mir - aber die Dateien warenkopiert, nichtgerührt. Es gab also Kopien der Jar-Dateien im Stammverzeichnis und Kopien der Jar-Dateien im Verzeichnis lib/. Wir haben die Kopie im Stammverzeichnis ständig überschrieben, weshalb unsere Änderungen ignoriert wurden, da die richtige Kopie in lib/ verwendet wurde.

verwandte Informationen