如何在sbt中了解已安装插件的可用任务和设置?

时间:2014-04-23 19:46:49

标签: sbt

使用sbt-git插件进行以下设置:

> about
[info] This is sbt 0.13.2
[info] The current project is {file:/Users/jacek/oss/sbt-git/}sbt-git 0.6.4-SNAPSHOT
[info] The current project is built against Scala 2.10.3
[info] Available Plugins: com.typesafe.sbt.SbtGit
[info] sbt, sbt plugins, and build definitions are using Scala 2.10.3

如何查询插件的可用任务和设置?我希望能够在sbt shell上说 - 显示插件的任务和设置。可能?怎么样?

2 个答案:

答案 0 :(得分:2)

  

如何查询插件的可用任务和设置?

它并非特定于插件,而是尝试从shell输入taskssettings。它应该是一个相对较短的列表,你可以解决问题。

答案 1 :(得分:0)

这里的技巧是插件只是jar,任务和设置只是Java / Scala值。所以插件jar中的任何方法都可以返回任务和设置。所有sbt都知道您添加到项目中的设置和任务。但要添加它们,您必须了解从中获取设置的方法和字段。

现在,插件的文档和来源就是您如何找到可以添加的内容。通常README是一个很好的起点。

当前的sbt在插件对象上有一个魔术方法叫做"设置"其中包含自动添加到所有项目的设置。但是,插件指南建议不要使用此功能,因为插件无法知道它们的设置对于构建中的每个项目是否有意义。很多插件都没有使用它。

在即将发布的sbt版本中,有一个新的AutoPlugin功能解决了这一问题,并允许插件仅将自己添加到具有某些功能的项目中。例如,插件可能只将自己添加到Java项目或仅添加到Play项目。

但是,您只能查询sbt以查找已添加的设置,而不是查询所有可用设置。