上善若水
          In general the OO style is to use a lot of little objects with a lot of little methods that give us a lot of plug points for overriding and variation. To do is to be -Nietzsche, To bei is to do -Kant, Do be do be do -Sinatra
          posts - 146,comments - 147,trackbacks - 0
          <2012年11月>
          28293031123
          45678910
          11121314151617
          18192021222324
          2526272829301
          2345678

          常用鏈接

          留言簿(4)

          隨筆分類(157)

          隨筆檔案(125)

          收藏夾(13)

          Java GC

          Java General

          NoSQL

          Tech General

          Tech Master

          最新隨筆

          搜索

          •  

          積分與排名

          • 積分 - 895621
          • 排名 - 42

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          在CSDN論壇上看到的一個(gè)不錯(cuò)的eclipse反編譯插件,感覺(jué)看起來(lái)不錯(cuò)的樣子,因而記下,原網(wǎng)址是:http://topic.csdn.net/u/20121030/14/CDE52930-BAF2-4F88-B751-3797A7EB3C44.html

          閑暇之余,寫(xiě)了一個(gè)Eclipse下的Java反編譯插件:Eclipse Class Decompiler,整合了目前最好的2個(gè)Java反編譯工具Jad和JD-Core,并且和Eclipse Class Viewer無(wú)縫集成,能夠很方便的使用本插件查看類庫(kù)源碼,以及采用本插件進(jìn)行Debug調(diào)試。

          Eclipse Class Decompiler插件更新站點(diǎn): http://feeling.sourceforge.net/update

          直接使用Eclipse進(jìn)行更新,支持Eclipse 3.x, 4.x,不依賴任何其他插件,直接勾選更新插件即可。




          下圖為Eclipse Class Decompiler的首選項(xiàng)頁(yè)面,可以選擇缺省的反編譯器工具,并進(jìn)行反編譯器的基本設(shè)置。缺省的反編譯工具為JD-Core,JD-Core更為先進(jìn)一些,支持泛型、Enum、注解等JDK1.5以后才有的新語(yǔ)法。



          首選項(xiàng)配置選項(xiàng):
          1.重用緩存代碼:只會(huì)反編譯一次,以后每次打開(kāi)該類文件,都顯示的是緩存的反編譯代碼。
          2.忽略已存在的源代碼:若未選中,則查看Class文件是否已綁定了Java源代碼,如果已綁定,則顯示Java源代碼,如果未綁定,則反編譯Class文件。若選中此項(xiàng),則忽略已綁定的Java源代碼,顯示反編譯結(jié)果。
          3.顯示反編譯器報(bào)告:顯示反編譯器反編譯后生成的數(shù)據(jù)報(bào)告及異常信息。
          4.使用Eclipse代碼格式化工具:使用Eclipse格式化工具對(duì)反編譯結(jié)果重新格式化排版,反編譯整個(gè)Jar包時(shí),此操作會(huì)消耗一些時(shí)間。
          5.使用Eclipse成員排序:使用Eclipse成員排序?qū)Ψ淳幾g結(jié)果重新格式化排版,反編譯整個(gè)Jar包時(shí),此操作會(huì)消耗大量時(shí)間。
          6.以注釋方式輸出原始行號(hào)信息:如果Class文件包含原始行號(hào)信息,則會(huì)將行號(hào)信息以注釋的方式打印到反編譯結(jié)果中。
          7.根據(jù)行號(hào)對(duì)齊源代碼以便于調(diào)試:若選中該項(xiàng),插件會(huì)采用AST工具分析反編譯結(jié)果,并根據(jù)行號(hào)信息調(diào)整代碼順序,以便于Debug過(guò)程中的單步跟蹤調(diào)試。
          8.設(shè)置類反編譯查看器作為缺省的類文件編輯器:默認(rèn)為選中,將忽略Eclipse自帶的Class Viewer,每次Eclipse啟動(dòng)后,默認(rèn)使用本插件提供的類查看器打開(kāi)Class文件。


          插件提供了系統(tǒng)菜單,工具欄,當(dāng)打開(kāi)了插件提供的類反編譯查看器后,會(huì)激活菜單和工具欄選項(xiàng),可以方便的進(jìn)行首選項(xiàng)配置,切換反編譯工具重新反編譯,以及導(dǎo)出反編譯結(jié)果。





          類反編譯查看器右鍵菜單包含了Eclipse自帶類查看器右鍵菜單的全部選項(xiàng),并增加了一個(gè)“導(dǎo)出反編譯源代碼”菜單項(xiàng)。



          打開(kāi)項(xiàng)目路徑下的Class文件,如果設(shè)置類反編譯查看器為缺省的查看器,直接雙擊Class文件即可,如果沒(méi)有設(shè)置為缺省查看器,可以使用右鍵菜單進(jìn)行查看。




          Eclipse Class Decompiler插件也提供了反編譯整個(gè)Jar文件或者Java包的反編譯。該操作支持Package Explorer對(duì)包顯示布局的操作,如果是平鋪模式布局,則導(dǎo)出的源代碼不包含子包,如果是層級(jí)模式布局,則導(dǎo)出選中的包及其所有的子包。




          Debug調(diào)試:可以在首選項(xiàng)選中對(duì)齊行號(hào)進(jìn)行單步跟蹤調(diào)試,和普通的包含源代碼時(shí)的調(diào)試操作完全一致,同樣的也可以設(shè)置斷點(diǎn)進(jìn)行跟蹤。


          posted on 2012-11-02 15:05 DLevin 閱讀(15161) 評(píng)論(3)  編輯  收藏 所屬分類: 收藏

          FeedBack:
          # re: 【轉(zhuǎn)】一個(gè)不錯(cuò)的eclipse反編譯插件
          2015-09-10 08:45 | Acoder
          # re: 【轉(zhuǎn)】一個(gè)不錯(cuò)的eclipse反編譯插件
          2015-09-22 14:24 | topcat
          # re: 【轉(zhuǎn)】一個(gè)不錯(cuò)的eclipse反編譯插件
          2015-09-22 14:24 | topcat
          very good  回復(fù)  更多評(píng)論
            
          主站蜘蛛池模板: 沁源县| 丹东市| 永平县| 保康县| 唐河县| 连南| 耒阳市| 新绛县| 永安市| 松潘县| 陇南市| 天水市| 南康市| 定结县| 丁青县| 河池市| 宜章县| 洛川县| 荥经县| 惠安县| 石台县| 收藏| 永登县| 普安县| 东平县| 崇义县| 青铜峡市| 汉阴县| 金溪县| 馆陶县| 汕头市| 哈巴河县| 通山县| 视频| 岢岚县| 宜城市| 威海市| 当雄县| 乃东县| 临夏市| 图木舒克市|