Brauche Hilfe zu dekompilieren einer jar-Datei, Bearbeiten Sie die Klasse, und speichern Sie Sie als jar-Datei
Habe ich eine jar-Datei, und ich brauche zum Bearbeiten einer bestimmten Klasse und speichern Sie Sie zurück in die jar-Datei.
Ich habe versucht, verschiedene decompilers, aber ich bin nicht in der Lage zu speichern zurück in das Gefäß.
Ich habe versucht, Eclipse zusammen mit JADCLIPSE zu dekompilieren.
Mit diesem kann ich sehen das der dekompilierte class-Datei, aber ich bin nicht in der Lage, um es zu Bearbeiten.
Könnte jemand mir bitte helfen, dieses Problem lösen?
InformationsquelleAutor user2635337 | 2013-07-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Benutze ich JD-GUI zu dekompilieren .jar ' s, dieser hat eine option zum exportieren aller Klassen dekompiliert. Wenn die .jar Sie sind Dekompilierung wurde nicht verschleiert etc diese Quelle sollte re-kompilierbar ist (sonst müssen Sie gehen über es durch bytecode-Bearbeitung).
Sobald Sie extrahiert haben, die Klassen, die Sie benötigen, um sicherzustellen wenn Sie kompilieren, kompilieren Sie mit der
-CP
parameter zeigt auf.;MyJar.jar
so, dass die Abhängigkeiten innerhalb der .jar finden Sie unter kompilieren.Nachdem Sie kompiliert, und habe Ihre neue .class-Datei/en, öffnen Sie die .Glas mit 7z und ersetzen Sie die alte .class-Datei/en mit Ihrem neuen. Sie tun kann dieser Schritt mit dem Befehl line-jar-tool aber 7z macht es einfacher. Wieder, wenn die Dose war verschleiert und die class-Dateien haben den gleichen Namen nur mit Kleinschreibung unterschieden, die Sie verwenden müssen, um Linux zu setzen .Klasse Datei. (wohl möglich auf Windows, aber ich habe noch nie sah in ihm sind zu tief).
Ich vorher dekompiliert dieses Java-Programm hinzufügen, um eine Kommandozeilen-Schnittstelle, können Sie wahrscheinlich finden Sie den link in die Kommentare;
http://ninjacave.com/jarsplice
Und legen Sie den Klassenpfad als d:\project\configurator.jar. Im Versuch, kompilieren Sie die java in windows mit der Eingabeaufforderung. Aber, immer "Paket existiert nicht-Fehler". Ich bezweifle, dass die java-Programme nicht in der Lage zu importieren dieses Pakets. ( java-code -- import de.tu_berlin.aio.cams.- Konfiguration.CamsLogger.LogOperator; ) und ( Fehler - Paket CamsLogger doesnot exist ) . Ich habe überprüft dies erneut, und Paket vorhanden ist, im genannten Pfad. Habe ich getan, alle Fehler, die während der Einstellung der Klasse Weg. Bitte helfen Sie.
wenn Sie Ihr Glas, hat keine Abhängigkeiten, die Sie benötigen, um Sie in die Klasse Pfad.
InformationsquelleAutor Robadob
dann gibt es viele Kostenlose Dienstprogramme wie WinZip , 7-ZIP, die Sie verwenden können.
Vor dem öffnen der jar-Datei, ändern Sie einfach die Dateiendung von jar auf zip-Datei und extrahieren Sie dann die bestimmte Klasse Datei, die Sie Bearbeiten möchten , dann dekompilieren beliebigen decompiler ,machen Sie die änderungen , kompilieren Sie es wieder, und dann endlich steckte Sie zurück in die zip-Datei.
Hoffe, es hilft.
Dank
InformationsquelleAutor saurav