5
我在http://www.scala-sbt.org/0.13/docs/Input-Tasks.html找到的文檔完全令人困惑。有人能給我提供,需要一個命令行參數,並做一些事情與它如一個任務/輸入任務的一個完整的例子:如何創建打印命令行參數的任務?
sbt "greeting hello world"
並打印的「Hello World」
我在http://www.scala-sbt.org/0.13/docs/Input-Tasks.html找到的文檔完全令人困惑。有人能給我提供,需要一個命令行參數,並做一些事情與它如一個任務/輸入任務的一個完整的例子:如何創建打印命令行參數的任務?
sbt "greeting hello world"
並打印的「Hello World」
繼文件Input Tasks(帶到輸入任務的名稱主要的變化所以它的greeting
):
import sbt.complete.Parsers.spaceDelimited
val greeting = inputKey[Unit]("A demo input task.")
greeting := {
val args: Seq[String] = spaceDelimited("<arg>").parsed
args foreach println
}
隨着build.sbt
上面,你可以從控制檯調用輸入任務:
> greeting "hello world"
hello world
,或者在命令行:
➜ so-25596401 xsbt 'greeting "hello world"'
[info] Loading global plugins from /Users/jacek/.sbt/0.13/plugins
[info] Set current project to so-25596401 (in build file:/Users/jacek/sandbox/so-25596401/)
hello world
[success] Total time: 0 s, completed Sep 1, 2014 1:34:31 AM
注意,指定什麼是帶參數的單任務/命令引號。