有没有办法查看我的flutter项目中的程序包如何相互依赖? 在软件包下,我指的是内部软件包:“ lib”下的文件夹。 另外,检查软件包之间的循环依赖关系也很好。
答案 0 :(得分:2)
我也在寻找一种工具来显示内部依赖项,但找不到。所以我写了一个叫做 Lakos 的工具来在 Graphviz 中可视化 Dart/Flutter 库的依赖关系。 Lakos 将可视化项目内部的依赖项,而不是外部包依赖项。 Lakos 还将使用退出代码警告依赖循环。
https://pub.dev/packages/lakos
示例用法:
lakos --metrics . | dot -Tpng -Gdpi=200 -o lakos_example.png
输出将类似于:
答案 1 :(得分:1)
虽然我没有找到检测依赖关系的工具,但我为文件夹添加了数字前缀,并按抽象级别对它们进行了排序:最高级别在顶部,最低级别在底部。
并且,为了避免循环依赖,我看着这些包仅引用了较大的数字,而不是较小的数字:
答案 2 :(得分:1)