學習項目代碼的時候想要看一下Cookie的源碼,已經確定下載到了本地,可是Ctrl+左鍵點進去,提示source not found(如下圖),百度了以后,大家普遍認為需要安裝反編譯插件jad。
看了幾個教程,嘗試安裝了好幾次都沒有成功,就是明明我安裝了jad插件,也關聯了.class文件的文檔編輯器,可是依然提示source not found。
最后一次卸載了,然后按照其中一個教程重新安裝終於成功,決定把整個過程記錄一下。
一、下載必要的軟件、插件
1. jad.exe 下載地址:http://varaneckas.com/jad/
2. net.sf.jadclipse_3.3.0.jar 下載地址:http://sourceforge.net/projects/jadclipse/
二、安裝軟件和插件
1. 新建一個目錄存放jad.exe及其臨時文件,我這里新建的目錄為D:\ProgramFiles\jad\,jad.exe直接放在此目錄下,再在此目錄下新建一個jadfile用於存放臨時文件,如下圖。
2. 把下載的net.sf.jadclipse_3.3.0.jar放到eclipse的plugins目錄下。
三、在eclipse中作相應的配置
1. 設置jad.exe的安裝路徑和生成的臨時文件路徑:Windows—>Preferences—>Java—>JadClipse,如下圖所示。
注意:(1) 把net.sf.jadclipse_3.3.0.jar放到eclipse的plugins目錄下之后需要重啟eclipse才能在此處看到JadClipse選項。
(2) Path to decompiler必須填寫jad.exe的完整絕對路徑(不過我嘗試了一下不寫文件后綴也可以正常反編譯)
2. 修改.class和.class without source文件關聯的編輯器,注意一定要把jad設為默認的編輯器,如下圖。
按照一、二、三步驟進行即可反編譯源碼。在寫這篇文章的時候我又仔細看了下前人寫的教程,我發現一些需要注意的地方他也有提到,只是當時我沒有注意到,我經常會同時參考好幾個教程,發現不行就會嘗試另一個,由於急於解決問題而忽略了一些關鍵點,所以以后一定要仔細按照別人的教程去做,如果確定沒有疏漏還是沒有解決問題再去嘗試其他的。
網絡上的解決方案林林總總,但不是對每一個人都適用,有的人教程寫的不詳細,就會埋一些坑;也有很多比較好的教程值得我們借鑒。ps:其實我也不能保證我寫的這篇解決方案沒有坑,只是解決了我當下的問題,拿出來分享一下。
2018/1/30 補充:
如果配置好的jad失效,那么進jad的設置(兩個位置),都重新打開設置並應用下就能恢復正常使用了。
2018/2/5 補充:
如果配置好的jad失效,那么進jad的設置(兩個位置),都重新選擇激活一下文本框,然后應用關閉即可,可能是某些錯誤導致了這個問題。
步驟:刪除 eclipse/configuration/org.eclipse.update 目錄,重啟eclipse,重新選擇激活一下文本框,應用關閉后就能正常使用在eclipse里用jad打開class文件了
可能會失敗,多打開幾次就能正常使用了
還有一種是查看jdk的官方源碼的方法:
在“perferences”窗口下,選擇java->Incelled jres
在edit jre對話框中,找到以“rt.jar”結尾的文件。點擊展開。
選擇“ Source Attachment”。點擊。
在 “Source Attachment”對話框下,選擇”External location“。路徑為安裝java JDK時的路徑,關鍵是在此路徑下,找到src.zip,就行了。