如何在sbt中看到依赖树?
我正在试图显示文档中描述的SBT依赖关系树:
sbt inspect tree clean
但是我得到这个错误:
[error] inspect usage: [error] inspect [uses|tree|definitions] <key> Prints the value for 'key', the defining scope, delegates, related definitions, and dependencies. [error] [error] inspect [error] ^
哪里不对? 为什么SBT不生成树?
当从命令行运行时 ,发送给sbt的每个参数应该是一个命令,因此sbt inspect tree clean
将会:
- 运行
inspect
命令, - 然后运行
tree
命令, - 然后是
clean
命令
这显然失败了,因为inspect
需要一个论点。 这将做你想要的:
sbt "inspect tree clean"
如果你想实际查看库依赖(就像使用Maven一样),而不是任务依赖(这是inspect tree
显示的东西),那么你就需要使用sbt-dependency-graph插件。
将以下内容添加到您的project / plugins.sbt(或全局plugins.sbt)中。
addSbtPlugin("net.virtual-void" % "sbt-dependency-graph" % "0.8.2")
然后你可以访问dependencyTree
命令和其他的。
如果你想查看库依赖关系 ,你可以使用coursier
插件: https : //github.com/coursier/coursier#printing-trees
输出示例: 文字(无颜色): https : //gist.github.com/vn971/3086309e5b005576533583915d2fdec4
请注意,插件与打印树木的性质完全不同。 它专为快速和并发的依赖性下载而devise。 但它很好,可以添加到几乎任何项目,所以我认为这是值得一提的。
- Spring 3.0包含哪些Maven依赖关系?
- Gradle – 获取依赖项的最新版本
- 是否有可能禁用javac的静态最终variables内联?
- 定位的程序集清单定义与程序集引用不匹配
- Gradle中编译和运行时configuration的区别
- 我如何确定.NET应用程序的依赖关系?
- 取决于在package.json中使用git URL的分支或标记?
- Java Maven项目中冲突的库版本
- 尝试“System.Web.Mvc.PreApplicationStartCode.Start()”到关键方法“System.Web.WebPages.Razor.PreApplicationStartCode.Start()”失败