MyEclipse 內建舊版 JAD (1.5.8e, 2005 年) 僅支援 Java 1.3/1.4 字節碼,**完全不支援 Java 5+ (泛型、枚舉、Lambda、模塊化等)**。配置路徑指向不存在的 jad.exe 導致 `CreateProcess error=5` (拒絕存取)。
| 工具 | 特點 | 支援版本 | 獲取方式 |
|---|---|---|---|
| JD-GUI | 圖形界面、一鍵反編譯 Jar/Class、支援拖拽、語法高亮 | Java 1.0 ~ 21 | 官網下載 (含 Windows/Mac/Linux) |
| Fernflower (IntelliJ 內建) | IntelliJ IDEA 直接雙擊 .class 檔即可查看、最準確還原語法糖 | Java 1.0 ~ 21 | IntelliJ IDEA 免安裝 |
| CFR | 命令行、批量反編譯整個 Jar、輸出可重新編譯源碼 | Java 6 ~ 21 | Maven: org.benf:cfr:0.152 |
| Procyon | 對 Lambda/Method Reference 還原極佳 | Java 5 ~ 21 | Maven: com.strobel:procyon-decompiler:0.6.0 |
jd-gui-1.6.6-min.jar (或 .exe/.dmg).class 或 .jar.class 即可查看 Fernflower 反編譯結果# 反編譯整個 jar 到 src 目錄
java -jar cfr-0.152.jar mylib.jar --outputdir src --caseinsensitivefs true
**棄用 JAD,擁抱 JD-GUI / Fernflower / CFR**。它們支援現代 Java 語法、維護活躍、零配置即用,徹底解決 MyEclipse 反編譯報錯問題。
