作為Java技術人員,經常會用到反編譯工具看別人的非開源代碼,之前多用的工具是jd-gui。
今天在電腦上用時發現啟動jd-gui時報需要jdk環境,奇怪明明電腦上配置好的環境變量,為啥還提示要JDK環境,網上一查原來是因為用的綠色版JDK,沒有向注冊表中寫數據,jd-gui啟動時就沒找到JDK環境,有兩種方法可解決:
1、重新用安裝版本的JDK,或手動將JDK信息添加到注冊表中。
2、采用java -jar jd-gui.exe的方式啟動。將其保存為bat文件,可很方便后面的啟動。
用jd-gui新的1.4.2版本查看jar的源碼時發現有些class文件打開報實例錯誤,還以為對方做了防止反編譯混淆之類的處理,后來又嘗試了luyten能成功反編譯。
看來遇到重要代碼又反編譯不成功時可以多個工具結合使用。
https://github.com/deathmarine/Luyten