教程集 www.jiaochengji.com
教程集 >  Golang编程  >  golang教程  >  正文 go mod graph 可视化——gmchart

go mod graph 可视化——gmchart

发布时间:2022-02-13   编辑:jiaochengji.com
教程集为您提供go mod graph 可视化——gmchart等资源,欢迎您收藏本站,我们将为您提供最新的go mod graph 可视化——gmchart资源
<h1>背景</h1>

之前构建 <code>golang</code> 遇到个问题,就是明明指定了依赖的包版本,在构建时,又自动把版本号给升上去了,当时不知道为什么。后面知道有个 <code>go mod graph</code> 的命令能列出所有的依赖,试了下,一点都不直观,还得复制到文本编辑器里面来来检索信息。

于是我就上网查了下相关工具。

<h1>别的工具</h1>

检索 Go Module 依赖关系 可视化

网上还是有很多工具。大部分方案都 <code>graphviz</code>,<code>echart</code>, 或者用绘制图片,我就试了几个。

<code>graphviz</code> 这个工具很强大,但需要通过其他渠道安装,且生成的svg可读性也不那么好,特别是依赖的包多起来之后,例如下面这个:

<span class="img-wrap"></span>

于是乎我转向 echart,

哇哦,看着挺不错的,鼠标悬停反馈也不错,配色也很鲜艳。

<span class="img-wrap"></span>

<blockquote>echart 方案很漂亮,但没法用。svg我还能搜索包名,echart 这个不显示包名。</blockquote><h1>我</h1>

好了,吐槽归吐槽,问题还是要解决的。今天给大家介绍个 <code>go mod graph</code> 可视化工具—— gmchart

<h1>gmchart</h1>

github: https://github.com/PaulXu-cn/...

<h1>安装</h1><pre><code class="shell">go get -u github.com/PaulXu-cn/go-mod-graph-chart/gmchart</code></pre>

检查安装情况,如下就是成功了

<pre><code class="shell">gmchart --help Usage of ~\go\bin\gmchart: -debug int is debug model -keep int start http server not exit</code></pre><h2>使用</h2>

进入 golang 项目,输入命令:

<pre><code class="shell">go mod graph | gmchart</code></pre><blockquote>会自动打开浏览器,如果没有就手动一下</blockquote>

访问 http://127.0.0.1:60306 就能看到

<span class="img-wrap"></span>

可以看到,它将依赖形成了一个 依赖树,你可以知道某个包在第几层被引入的,非常直观。网页内是一个svg,你要找某个包也非常方便,直接 <code>ctr F</code> 就能检索。

<h1>总结</h1>

找了那么久,为啥还是没有一个趁手的工具呢?

我想了下,可视化是前端的擅长的啊,前端不用 <code>golang</code> 啊,会的也少,会 <code>Golang</code> 的前端,还对 <code>go mod graph</code> 这个功能感兴趣的就更少了,所以这个工具只能是我们后端来做了

哎~

<h2>其他方案</h2><ul><li>https://github.com/poloxue/modv</li><li>https://github.com/ofabry/go-...</li><li>https://github.com/ios122/gra...</li></ul> 到此这篇关于“go mod graph 可视化——gmchart”的文章就介绍到这了,更多文章或继续浏览下面的相关文章,希望大家以后多多支持JQ教程网!

您可能感兴趣的文章:
go mod graph 可视化——gmchart
有关 mysql count(*) 与 count(col) 查询效率的比较分析
js时间函数综合例子(日期计算、字符串转日期等)
asp.net常用http状态码表
css中position相对定位和绝对定位(relative,absolute)详解
css 定位(相对定位与绝对定位)
专家教你如何有效的学习Drupal - Drupal问答
使用SHOW PROFILE查找MySQL中的SQL耗时瓶颈
php5 字符串处理函数汇总
整理的.NET高效开发的25款工具【值得收藏】

[关闭]
~ ~