Scala SBT。任务中包含参数的runMain
我有一个简单的任务:Scala SBT。任务中包含参数的runMain,scala,sbt,Scala,Sbt,我有一个简单的任务: lazy val myCustomTask = TaskKey[Unit]("description of my task") myCustomTask := { val arg = "arg1" // Not used yet (runMain in Compile).toTask(" com.company.Main").value } 它很好用。 但我需要传递一些论点。如果我这样做: (runMain in Compile).toTask(s"
lazy val myCustomTask = TaskKey[Unit]("description of my task")
myCustomTask := {
val arg = "arg1" // Not used yet
(runMain in Compile).toTask(" com.company.Main").value
}
它很好用。但我需要传递一些论点。如果我这样做:
(runMain in Compile).toTask(s" com.company.Main $arg").value
我得到一个错误:
错误:非法的动态引用:arg(编译中的runMain).toTask(s“com.company.Main$arg”).value
^
[错误]表达式中的类型错误
如何正确传递参数
p.S.对不起,我的英语不是我的母语。用动态任务解决了这个问题:
lazy val myCustomTask = taskKey[Unit]("description of my task")
myCustomTask := Def.taskDyn {
val arg = "arg1"
Def.task {
(runMain in Compile).toTask(s" com.company.Main $arg").value
}
}.value