美文网首页
使用plantuml生成GO的类图

使用plantuml生成GO的类图

作者: kamiSDY | 来源:发表于2018-05-17 19:14 被阅读0次

最近在看Go源码,自己写类图甚是苦恼。然后就查了下资料。下面总结下流程:

利用go-package-plantuml分析go项目

首先,我们需要一个工具分析GO项目并生成plantuml需要的uml源文件。
这里,推荐一个大神的作品:go-package-plantuml,其github地址为HERE。也是一个go项目。
使用go-get安装并编译:

go get git.oschina.net/jscode/go-package-plantuml
go build git.oschina.net/jscode/go-package-plantuml

(当然,需要具有GO的环境。)
build后,直接执行,其中有四个参数:

--codedir 目标分析的代码目录
--gopath 本地设置GOPATH环境变量目录
--outputfile 分析结果保存到该文件(设置了之后还是保存到了/tmp路径下)
--ignoredir 不需要进行代码分析的目录(可以不用设置)

这里我们就分析下该项目:

./go-package-plantuml --codedir /home/user/go/src/git.oschina.net/jscode/go
-package-plantuml --gopath /home/user/go --outputfile /home/user/result.txt 

结果输出还是到了INFO[0001] 数据已保存到/tmp/uml.txt

plantuml工具

其能够将指定格式的UML描述文件(文本形式)转化为可视化的图形文件(我们常见的UML图)。
具体的UML描述文件格式和规范见官方网站的DOC
下载地址:官方下载地址
可运行程序是一个jar包。然后确保本地具有java环境后,执行jar:

java -jar plantuml.jar /tmp/uml.txt

应该就ok了。
这里就是生成的类图文件:


image.png

So Good!!!!!·

这里有个小问题,可能有些朋友会遇到这个问题:

java.io.IOException: Cannot run program "/usr/bin/dot": error=2, No such file or directory

然后,看了一下,其需要安装一个画图组件(非常牛逼):GraphViz
官方网站上可以见可执行文件的下载版本,同时也可通过yum进行安装:

yum list 'graphviz*' 查看已安装graphviz包
yum install 'graphviz*' 安装graphviz

安装完之后,运行which dot,就可以看到了。
如果运行出现:

image.png

就在run jar包的时候指定dot的位置:

java -jar plantuml.jar -verbose -graphvizdot /usr/bin/dot /tmp/uml.txt

这里dot的位置是你安装的dot的位置,通过which dot可以找到。

参考链接

相关文章

  • 使用plantuml生成GO的类图

    最近在看Go源码,自己写类图甚是苦恼。然后就查了下资料。下面总结下流程: 利用go-package-plantum...

  • 类图的6大关系详解

    类图 以下类图使用PlantUML绘制,更多语法及使用请参考:http://plantuml.com/。 泛化关系...

  • intellij idea 工具集

    Intellij IDEA中安装&使用PlantUML画时序图、类图等 intellij 2018.2.5 注册...

  • 2021-07-06

    类图 1、https://plantuml.com/zh/starting[https://plantuml.co...

  • android studio使用 plantUML插件绘制UML

    android studio使用plantUML插件绘制UML类图 未安装Graphviz Graphviz介绍D...

  • PlantUML 简明教程

    PlantUML 简介 PlantUML 是一个开源项目,支持快速绘制时序图、用例图、类图、活动图、组件图、状态图...

  • UML

    参考 plantuml 类图 类图常见的关系: 继承(Inheritance),实现关系(Realization/...

  • uml工具

    使用 Sublime + PlantUML 高效地画图 PlanUML 官方文档 UML类图几种关系的总结 状态机...

  • PlanUML教程

    PlantUML类图的写法 PlantUML用下面的符号来表示类之间的关系:类之间的关系 类关联关系英文名称pla...

  • Mac环境下在VSCode中使用PlantUML

    PlantUML介绍 PlantUML 可以用来画类图和流程图,类似MarkDown语法那样简单实用。 第一步:安...

网友评论

      本文标题:使用plantuml生成GO的类图

      本文链接:https://www.haomeiwen.com/subject/txsidftx.html