(轉)Eclipse 生成類圖、時序圖UML逆向插件


在調試源碼、學習總結時如果能有清晰的類圖、時序圖在手邊,那么必將事半功倍。今天總結下個人摸索這款工具的坑,希望能讓大家在安裝使用時少走彎路。

首先我們需要的是一款能夠逆向的插件,逆向是指能夠根據java代碼自動生成類圖或時序圖。當然,很快我遍找到了很多款可用的插件列表。然而在安裝過程中卻歷經坎坷。

主要原因如下:
第一、各種被牆;
第二、mac版,相對來說坑更多;
第三、網上帖子年代久遠、大多項目地址已經搬遷;
第四、插件使用介紹不多,裝好后仍難使用;
第五、沒有安裝GEF,導致插件出不來;

網上有很多中插件,本文不一一羅列,只講親測可用的AmaterasUML

第一步:安裝GEF

提供兩個版本的update site地址,如果eclipse版本較高(5.0.0 Oxygen),下載GEF5,否則下載 GEF4;
GEF5 update site: http://download.eclipse.org/tools/gef/updates/releases
GEF4 update site: http://download.eclipse.org/tools/gef/gef4/updates/releases

補充一下update site的安裝方式:

打開eclispe -> help -> Install New Software


 
Install New Software.png

彈出框如下:


 
image.png

點擊add -> 輸入update site地址(name隨便填) -> ok

然后出現需要安裝的套件,Select All -> Next,然后一步一步安裝,這個地址沒有被牆,稍微有點大,安裝速度應該還可以。


 
image.png

第二步:安裝AmaterasUML

AmaterasUML update site: https://takezoe.github.io/amateras-update-site/

AmaterasUML搬到了github,所以下載速度也很快。網上老版本地址很多都不可用。

安裝步驟參考第一步;

第三步:使用AmaterasUML

順利的話,現在重啟eclipse就在file -> new -> other里面就可以看到AmaterasUML了。如果沒有,應該是哪里出問題了,可以留言探討。

 
image.png

AmaterasUML提供了活動圖、類圖、時序圖、用例圖。這里介紹類圖和時序圖的使用。

Class Diagram 類圖:

類圖比較簡單,我們新建一個類圖文件classDiagram.cld,


 
image.png

在這個視圖下,我們直接把需要展現的類從左側拖過去即可,需要注意的是,Link with Editor一定要關掉,如下圖:


 
image.png

簡單拖拽,一個簡單的類圖就完成了。
 
簡單類圖

右擊元素可以對其編輯、排版等,詳細操作自由去探索吧。

Sequence Diagram時序圖

時序圖如何生成?逆向時序圖由Stack Trace Sample視圖生成。
首先window -> show view -> other,調出所有view

 
image.png

選擇Stack Trace Sample -> ok
 
image.png

出現如下視圖:
 
image.png

逆向時序圖就是由此view生成,這里需要准備堆棧信息,復制進Stack Trace Sample窗口。
 
堆棧信息准備

堆棧信息復制進去以后,點擊窗口右上角的那個小按鈕(不同版本可能不太一樣)直接生成時序圖,然后彈出窗口選擇需要保存時序圖的位置,如果沒有彈窗,可能是堆棧信息格式有誤。
 
保存時序圖

打開保存的時序圖如下:
 
image.png

是不是很完美? 哈哈 還是不錯。

有了堆棧信息,產生時序圖很方便,目前我的堆棧信息是通過自定義異常拋出的,還在尋找更好的生成方式。

 

這就是今天總結的eclipse UML逆向插件,希望對大家有所幫助,如果大家有更好的歡迎推薦。


本文轉自:
作者:徐志毅
鏈接:https://www.jianshu.com/p/6239c916fc83
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM