You need to enable JavaScript to run this app. 如何在sbt中生成仅包含内部项目的依赖关系图?
优惠活动
大模型
产品
解决方案
定价
更多

如何在sbt中生成仅包含内部项目的依赖关系图?

sbt 内部项目依赖图生成方案

可以生成仅包含内部项目的依赖图,且支持纳入 ProjectRef 类型的跨目录内部项目依赖,具体操作方法如下:

仅生成内部项目依赖图的操作

  • 如果你使用的是 sbt 1.4+ 版本(自带官方依赖图功能,推荐),执行命令时添加组织名过滤参数,即可过滤掉所有第三方外部依赖,仅保留内部项目:
    sbt dependencyDot --include-projects "你的内部组织名::*"
    
    将占位符替换为你内部项目统一的组织名即可。
  • 如果你使用的是旧版本 sbt + 第三方 sbt-dependency-graph 插件,对应过滤命令为:
    sbt "dependencyDot includeFilter=*你的内部组织名*"
    

纳入 ProjectRef 类型依赖的配置

如果默认生成的结果中没有包含 dependsOn(ProjectRef(...)) 声明的跨目录依赖,在 build.sbt 的对应项目配置块中添加以下设置即可:

// 开启依赖图对 ProjectRef 类型依赖的识别
dependencyDotIncludeProjectRefs := true
// 可选:完全屏蔽第三方库依赖,生成结果仅保留所有内部项目
dependencyDotIncludeModules := false

配置完成后重新执行生成命令即可,后续转成图片的操作和你已知的方法一致:

sbt dependencyDot
[info] Wrote dependency graph to 'target/dependencies-compile.dot'
dot target/dependencies-compile.dot -Tpng -o /tmp/dependencies-compile.png


内容的提问来源于stack exchange,提问作者IntrestedInSpark

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.10 00:36:03