這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。
使用工具go-package-plantuml分析go項目源碼,自動產生uml類圖
plantuml工具介紹
plantuml支援將“文本描述的UML類圖”轉換成圖片形式的類圖等。
類圖使用例子如下,參考 http://plantuml.com/class-diagram
@startumlClass11 <|.. Class12Class13 --> Class14@enduml
安裝go-package-plantuml
go-package-plantuml 項目代碼地址 https://git.oschina.net/jscode/go-package-plantuml
下載和編譯項目:(系統需要先安裝好go編譯環境)
go get git.oschina.net/jscode/go-package-plantumlgo build git.oschina.net/jscode/go-package-plantuml
使用go-package-plantuml分析go項目,產生uml類圖描述檔案
./go-package-plantuml --codedir /appdev/gopath/src/github.com/contiv/netplugin \--gopath /appdev/gopath \--outputfile /tmp/result \--ignoredir /appdev/gopath/src/github.com/contiv/netplugin/vendor參數說明--codedir 要分析的代碼目錄--gopath GOPATH環境變數目錄--outputfile 分析結果儲存到該檔案--ignoredir 不需要進行程式碼分析的目錄(可以不用設定)
使用plantuml產生類圖
下載plantuml https://nchc.dl.sourceforge.net/project/plantuml/plantuml.jar
提示:如果系統沒有安裝jdk,需要先安裝jdk;yum install -y java
執行下面命令產生圖片形式的類圖/tmp/uml.png
java -jar plantuml.jar /tmp/text.uml
如果想產生svg格式的檔案,使用-tsvg參數。svg格式的檔案,使用瀏覽器開啟,可以搜尋類名。
java -jar plantuml.jar /tmp/text.uml -tsvg