java是一門開源的程序設計語言,喜歡研究源碼的java開發者總會忍不住debug一下jdk源碼。雖然官方的jdk自帶了源碼包src.zip,然而在debug時查看變量卻十分麻煩。例如調試HashMap的 public V put(K key, V value) 方法並查看key的值時會提示:java
能夠看到不能顯示變量的值了,緣由在於oracle提供的jre中rt.jar不帶debug信息:orcale在編譯src時使用了 javac -g:none,意思是不帶任何調試信息,這樣能夠減少rt.jar的大小。若想正常調試jdk,就只能從新編譯src.zip。這裏介紹下編譯src.zip的方法。oracle
在eclipse中新建一個java項目「jdk」,而後在src目錄上導入"Archive File",選擇源碼src.zip導入,導完目錄結構以下(不用管編譯報錯):eclipse
右鍵項目export...,而後導出爲jar包,起名爲rt_debug.jar:spa
修改eclipse的jre設置,將rt_debug.jar添加到jre中,並移動到最前面:debug
最後再查看debug變量,能夠看到變量值了:設計