如何在 sbt 中提供自定义命令的帮助?
我想显示所述帮助,以防我设置的参数错误(例如将字符串放入数字参数中)
如果输入
help <myCommand>
,我还想显示帮助。
有什么线索吗? 文档没有提及任何相关内容。
根据文档,
help
应该适用于Command
。但是您需要使用 Command
中的方法之一正确定义
Command.scala
,例如
commands += Command.command("foo", "bar", "baz")(...)
然后
> foo<TAB>
bar
> help foo
baz
为了任何想要为
Task
做同样事情的人的利益,这里有一个答案......
help
输入任务是您希望用户输入的内容,例如
> help compile
Compiles sources.
并提供文档字符串,您可以在定义
Task
的密钥时提供它。例如
val compile = TaskKey[CompileAnalysis]("compile", "Compiles sources.", APlusTask)
稍后您将密钥分配给
Task
的实现,就像这样
compile <<= compileTask
或者使用新的基于宏的API(我讨厌)
compile := { println("hello world") ; compile.value }
有很多例子