前言
Golang
语言在近些年的开发语言中异军突起,在越来越多的公司项目中频繁出镜,也有越来越多的中间件选择使用Golang
语言进行实现。正所谓源码之下无秘密,更友好地翻读源码对于理解功能特性以及后续使用非常有帮助,观摩学习源码也是非常好的一种学习方式。
本篇基于Golang
常用开发工具Goland
结合GoPlantUml
进行代码ER关系图生成,便于更好阅读代码和梳理逻辑关系。
环境配置
基于MacOS环境
下载PlantUml插件
打开Goland,Preference -> Plugins -> Marketplace -> 搜索plantuml -> 安装
安装GoPlantUml
将goplantuml
可执行文件安装到本地$GOBIN
目录下:
go get github.com/jfeliu007/goplantuml/cmd/goplantuml
### 或者
go install go get github.com/jfeliu007/goplantuml/cmd/goplantuml
安装Graphviz
下载地址:https://graphviz.org/download/
### macos下执行
brew install graphviz
graphviz
的下载依赖非常多,这里容易出现的问题是依赖不可用不可下载,可以通过修改brew源为阿里云镜像完成,如下:
### 打开配置文件
vi ~/.zprofile
### 输出brew环境变量
export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles
### 配置生效
source ~/.zprofile
配置External Tools
Preference -> Tools -> External Tools -> 新增/编辑
- Name:goplantuml(可自定义)
- Program:/usr/local/go/bin/goplantuml (goplantuml的安装路径,可以通过$GOBIN获取到)
- Arguments:-recursive --output=$FileDir$.puml $FileDir$
- Working directory: /User/workspace/bin (Project目录路径)
生成PlantUml
选中项目中要生成的目录,这里是acl
,鼠标右键找到External Tools -> goplantuml
生成文件acl.puml
文件,即acl
目录下ER关系图
。
当打开查看时,遇到问题Cannot Find Graphviz
。
添加环境变量,指定Graphviz的执行路径
###添加系统变量
GRAPHVIZ_DOT=/usr/local/Cellar/graphviz/2.48.0/bin
或者在项目中配置graphviz
执行路径
重启后可以正常看到该目录下的ER关系图
,如下: