Ich arbeite mit einer großen Java-Webanwendung von einem kommerziellen Anbieter. Ich habe einen Patch vom Hersteller in Form einer neuen .class-Datei erhalten, die ein Problem lösen soll, das wir mit der Software haben. In der Vergangenheit hat das Anwenden von Patches dieses Anbieters zu neuen und völlig unabhängigen Problemen geführt. Daher möchte ich die vorgenommenen Änderungen verstehen, bevor ich sie auf eine Testinstanz anwende.Unterschiede zwischen Versionen einer Java-Klassendatei finden
Ich habe die beiden .class-Dateien nebeneinander, die aus der aktuell laufenden Version und die aktualisierte aus dem Hersteller extrahiert. JAD und JReversePro dekompilieren und disassemblieren beide Versionen auf den gleichen Ausgang. Allerdings haben die .class-Dateien unterschiedliche Größen und ich sehe Unterschiede in der Ausgabe von od -x
, also sind sie definitiv nicht identisch.
Welche anderen Schritte könnte ich unternehmen, um den Unterschied zwischen den beiden Dateien zu ermitteln?
Fazit:
Dank für die großen Antworten. Da die Ausgabe javap -c
für die beiden Klassendateien ebenfalls identisch ist, werde ich zu dem Schluss kommen, dass Davr Recht hat und der Verkäufer mir ein Placebo geschickt hat. Während ich Davrs Antwort aus diesem Grund akzeptiere, waren es Chris Marshall und John Meagher, die mich zu javap brachten, also vielen Dank an euch drei.