【发布时间】:2015-07-03 00:43:50
【问题描述】:
如何检查当前构建中的 sbt autoPlugin 版本?
例如,Play 框架提供了sbt-native-packager 插件,可以通过将enablePlugins(SbtNativePackager) 放置在build.sbt 中来将其添加到构建中。有没有办法确定 sbt 使用的是哪个版本的 sbt-native-packager?
【问题讨论】:
标签: playframework sbt
如何检查当前构建中的 sbt autoPlugin 版本?
例如,Play 框架提供了sbt-native-packager 插件,可以通过将enablePlugins(SbtNativePackager) 放置在build.sbt 中来将其添加到构建中。有没有办法确定 sbt 使用的是哪个版本的 sbt-native-packager?
【问题讨论】:
标签: playframework sbt
这不是最好的,但这是一种方法:
sbt
> reload plugins
> consoleProject
scala> ((managedClasspath in Compile).eval
| map (_.data.toString)
| filter (_ contains "native")
| foreach println
| )
/Users/dnw/.ivy2/cache/scala_2.10/sbt_0.13/com.typesafe.sbt/sbt-native-packager/jars/sbt-native-packager-1.0.1.jar
【讨论】:
project/plugins.sbt 中存在显式依赖时,这种方法有效,但如果从另一个项目(如 Play)提供,似乎找不到任何东西。
project/plugins.sbt 中声明 sbt-native-packager。我认为您将 managedClasspath 与 libraryDependencies 混淆了。
;reload plugins;show compile:managedClasspath; reload return