Dekompilierte dekompilierte Java (JD / JAD) Quelle, die goto Anweisungen enthält

8

(Verwandte Frage: Java-Compiler oder JVM-Sprachen, die goto unterstützen? )

Ich habe ein Jar deklariert (legal, zu Debugging-Zwecken) und möchte es neu kompilieren.

Ich habe sowohl JAD als auch JD und beide kompilieren aufgrund von Anweisungen nicht

z. B.

%Vor%

Gibt es einen einfachen Weg (oder irgendeinen Weg), um es neu zu kompilieren? (Ausgenommen, die goto s manuell zu refaktorieren und zu entfernen)

Eran Medan 10.01.2010, 12:25
quelle

4 Antworten

10

Nein, ist es nicht. In Ihrem Fall konnten weder JD noch JAD die Klassendateien korrekt dekompilieren. Die 'goto' Anweisungen sind ein Hinweis auf den tatsächlichen Programmablauf.

Sie könnten das Java Decompiler-Team direkt kontaktieren, eine Klassendatei senden, bei der die Dekompilierung zu illegalem Quellcode führt, und fragen, ob es sich um einen Fehler in der aktuellen Version oder um ein noch nicht implementiertes Feature handelt.

    
Andreas_D 10.01.2010, 12:39
quelle
8

JAD ist ein wirklich erstaunlicher Decompiler, JD ... habe einige Probleme mit den "try-catch-finally" -Aussagen.

Haben Sie den Dekompiler von Stiver ( Ссылка ) versucht?

Emmanuel, Autor von JD.

    
Emmanuel Dupuy 25.02.2010 19:48
quelle
3

Alle Dekompiler suchen nach Codemustern, die den Java-Quellkonstruktionen entsprechen, und wählen die Quelle aus, die am besten passt.

Anscheinend entspricht der Code, den Sie haben, keinem Muster, das in JAD oder JD gespeichert ist, so dass Sie eine nicht kompilierbare Java-Quelle erhalten. Dies liegt wahrscheinlich daran, dass JAD seit mehreren Jahren nicht aktiv entwickelt wurde.

Ich würde vorschlagen, dass Sie sich das Soot-Projekt anschauen, das einen viel aggressiveren Decompiler hat.

Ссылка

    
quelle
0

Ich würde einen modernen Decompiler empfehlen - wie CFR oder FernFlower!

Ich habe 6 Java-Decompiler online gestellt: Jadx, schnell und mit Android-Unterstützung, CFR (unterstützt Java 8), JDCore (sehr schnell), Procyon, Fernflower und JAD (sehr schnell, aber veraltet).

Man kann sie ohne Installation hier verwenden: Ссылка

    
Andrew Rukin 21.08.2015 11:26
quelle

Tags und Links