vscode快速渲染uml

目的

为什么要用VSCOde 生成 uml 类图。用idea不香吗?idea生成一个类的uml类图还是很不错的。但是当时生成整个项目或则某个包下的uml就不方便了。也有可能是我不知道方便的办法。

安装插件

在这里插入图片描述具体安装方式百度 vscode plantuml

bash 过滤出类

windows 下可以用git自带的bash。或则用wsl

find . -name '*.java' | xargs cat | \
awk -vRS='{' 'match($0,/public\s+((class|interface).+(extends|implements).+$)/,a){print a[1] "#" }' | \
awk -vRS="" '{gsub("\n"," ");print}'| awk -vRS="" '{gsub("#","\n");print}'> a.puml

bash命令解释

find . -name '*.java' | xargs cat

find命令找出所有java文件的路径用cat命令合并


awk -vRS='{' 'match($0,/public\s+((class|interface).+(extends|implements).+$)/,a){print a[1] "#" }'

设置把awk的行分割符RS改为{,再用正则public\s+((class|interface).+(extends|implements).+$匹配类名或接口名。
输出第一个捕获组和一个##用于后面分割。


awk -vRS="" '{gsub("\n"," ");print}'| awk -vRS="" '{gsub("#","\n");print}'> a.puml

第一个awk把换行删去。把文件合并成一行。第二个awk再把#换成换行符\n

修改puml文件

halo开源项目为例
vscode的正则去掉所有泛型
你会得到一个这样的文件
在这里插入图片描述头部加上@startuml halo 尾部加上 @enduml

按快捷键alt+d 预览。
如果报错多半是因为语法错误。
可以参考官网教程

ctrl+shift+p 输出为svg.

在这里插入图片描述

效果

在这里插入图片描述

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐