Anzeige

Dekompilierte Klasse neu kompilieren


#1
Hallo, ich arbeite gerade an der Anbindung eines Open Source Programms. Ich muss dabei bei einer Klasse nur eine Zeile ändern. Also habe ich die .class dekompiliert, die Zeile bearbeitet und versucht sie wieder über die CMD zu kompilieren. Jedoch kommen dabei rund 60 Fehler raus. "Package cannot find" und "cannot find symbol" Fehler. Deswegen die Frage: Ist es nicht möglich die .class zu dekompilieren, zu bearbeiten und sofort wieder zu kompilieren, ohne, dass ich die restlichen 155 weiteren Klassen auch mit einbinden muss?
 

Bratkartoffel

gebratene Kartoffel
Premium-User
#2
Hi,

ich rate dir dringend davon ab, das so zu machen wie du beschrieben hast.
Habe es auch hier bei uns in der Firma gesehen und das hat uns nur Probleme bereitet.

"Einfach nur eine Zeile", dabei bleibts meistens nicht. Dann findet ihr wo anders auch etwas, was ihr ändern müsst und so weiter. Am Ende habt ihr einen fixen Stand der Bibliothek, ein Update auf eine neuere Version wird dann fast unmöglich ohne die ganzen Anpassungen nochmal zu machen. Ich denke nicht, dass du in ein paar Monaten noch weisst, wo du was geändert hast. Dazu kommt noch, dass sich die Bibliothek auch weiterentwickelt und du u.U. deine Änderungen nicht 1:1 übernehmen kannst. Entweder du machst ein Backporting der Sicherheitsupdates (dazu muss man sich aber mit der Bibliothek und den gefundenen Sicherheitslücken sehr gut auskennen), oder du steckst auf der alten, unsicheren Version fest.

Du meinst, das ganze sei Open-Source. Dann schreibe die Entwickler / Maintainer doch an, ob die das nicht regulär einbauen können. Oder mache selbst einen Pull-Request mit deiner Änderung.

Handelt es sich um einen Fehler? Dann mach einen Bug in deren Bugtracker auf.
Benötigt nur ihr das? Dann nehmt ihr die Bibliothek falsch her.

Grüsse,
BK
 
Anzeige
Anzeige