SBT:列出项目依赖库

时间:2014-06-25 15:07:19

标签: scala dependencies sbt

如何告诉SBT列出其带入项目的所有库?我看到IntelliJ能够这样做。

就我而言,SBT正在引入hadoop-1(我认为这是一种传递依赖)。我试图让它使用hadoop-2 - 我在build.sbt中添加了对它的引用,但我仍然从使用v1得到错误,而IntelliJ仍然显示“SBT:Hadoop 1”lib

2 个答案:

答案 0 :(得分:7)

对于这些问题,我通常使用sbt-dependency-graph插件https://github.com/jrudolph/sbt-dependency-graph

要反向查找依赖性来自的地方:

what-depends-on <organization> <module> <revision>

它将生成查询依赖项路径的良好输出

答案 1 :(得分:0)

使用sbt 0.13.11。

这是您项目中的一项有用任务。这将列出所有jar依赖项。

lazy val showJars = taskKey[Unit]("Print all Jar dependencies")

showJars <<= (target, fullClasspath in Compile) map { (target, cp) =>
   cp.foreach(x => println(x.data))
}

如果您想查看所依赖的所有软件包的快速列表,请使用libraryDependencies设置:

libraryDependencies

如果您想查看依赖于什么的完整图表,那么请使用sat-dependency-graph插件。

如果您只对一个模块感兴趣:

whatDependsOn <organization> <module> <revision>