Dart/Flutter 中的依赖关系图?

pol*_*a-c 17 dependencies circular-dependency flutter

有没有办法查看我的颤振项目中的包如何相互依赖?在包下,我的意思是内部包:“lib”下的文件夹。此外,检查包之间的循环依赖关系会很棒。

ibh*_*ana 37

您可以使用以下命令查看您的 Flutter 应用程序的依赖关系图。

flutter pub deps
Run Code Online (Sandbox Code Playgroud)

依赖信息以树、列表或压缩列表的形式打印。

在此处输入图片说明

  • 这很有趣。但是,我有兴趣查看应用程序中的内部依赖项,而不是外部依赖项。我更新了我的问题以使其清楚。 (3认同)
  • 传递 `--no-dev` 选项来隐藏 `dev_dependency`。 (2认同)

Ole*_*der 20

我也在寻找一种显示内部依赖关系的工具,但找不到。因此,我编写了一个名为 Lakos 的工具来可视化 Graphviz 中的 Dart/Flutter 库依赖关系。Lakos 将可视化项目内部的依赖关系,而不是外部包依赖关系。Lakos 还将通过退出代码警告依赖循环。

https://pub.dev/packages/lakos

用法示例:

lakos --metrics . | dot -Tpng -Gdpi=200 -o lakos_example.png
Run Code Online (Sandbox Code Playgroud)

输出将类似于以下内容:

Lakos 依赖图示例


pol*_*a-c 3

依赖关系图示例

LayerLens可以为您的项目持续自动生成依赖关系图。