【轉載】解決Eclipse除錯JDK原始碼無法檢視變數值
轉載來自:https://blog.csdn.net/u010407050/article/details/76690478
解決方案
1.在你的D:
盤新建jdk
資料夾,然後在資料夾裡面分別建立兩個資料夾jdk_src
(存放原始碼)和jdk_debug
(存放編譯結果檔案)。
2.從%JAVA_HOME%
路徑下找到src.zip
原始碼原始碼壓縮包,解壓至D:/jdk/jdk_src
目錄中,並只保留java
,javax
,org
三個資料夾。
3.從%JAVA_HOME%\jre\lib
找到rt.jar
,將它拷貝到D:/jdk
資料夾。
4.開啟DOS命令視窗,用命令cd
命令進入D:/jdk
資料夾,然後執行命令dir /B /S /X .\jdk_src\*.java > .\filelist.txt
D:/jdk
目錄生成filelist.txt
檔案,裡面為待編譯的檔案路徑*/*.java
。
5.執行命令javac -J-Xms16m -J-Xmx1024m -sourcepath .\jdk_src -cp .\rt.jar -d .\jdk_debug -g @.\filelist.txt >> .\log.txt 2>&1
會編譯filelist.txt
檔案中列出的*.java
原始檔,編譯的*.class
檔案會放入D:/jdk/jdk_debug
資料夾,同時編譯過程中會在D:/jdk
生成log.txt
檔案。
6.執行cd命令切換到D:/jdk/jdk_dug
jar cf0 rt_debug.jar *
將*.class
檔案打成jar
,打包完成後會在D:/jdk/jdk_debug
目錄中生成rt_debug.jar
。
7.把這個生成的rt_debug.jar
包複製到%JDK_HOME%\jre\lib\endorsed
下。如果沒有endorsed目錄,自己建立一下。
8.在eclipse裡面找到Window->Installed JRES
,選擇jdk
,點選Edit
,然後點選Add External jars
,選擇剛才建立的rt_debug.jar
匯入,然後把rt_debug.jar
移動到rt.jar的前面,最後選中rt_debug.jar
Source Attachment
選擇%JAVA_HOME%/jdk/src.zip
新增原始檔,並把rt.jar
的原始檔刪除,最最後,重啟eclipse。
好了,各位,到此為止就全部完成了。別說話,用心去感受!
更新補充 2018/08/02
根據評論網友反映的問題補充如下:
1.關於第一步,只保留java
,javax
,org
三個資料夾,如果想保留全部資料夾,請自行嘗試。
2.關於第八步,把rt.jar
的原始檔刪除,這個可能會導致有的程式碼編譯不通過,建議保留。