创建一个运行程序的新任务

时间:2012-03-14 13:24:16

标签: scala sbt

我需要定义一个自定义任务来计算主类的名称,然后运行它。我在考虑这样的事情

customTask {
  mainClass = compute main class name based on env
  runMain(mainClass, jvm-args, fork=true)
}

然后在SBT我可以运行

  

SBT>定制任务

可以在SBT 11.2中完成吗?

2 个答案:

答案 0 :(得分:2)

你可以尝试一下..我的工作正常 -

lazy val testngRun = inputKey[Unit]("custom run task for testng")

testngRun := {
    val one = (runMain in Compile).fullInput(" org.testng.TestNG -testclass com.pg.acceptance.testcase.PfsLoginServiceTest").evaluated
}

答案 1 :(得分:0)

迟到的答案,但您可以创建文档http://www.scala-sbt.org/release/docs/Detailed-Topics/Tasks#defining-a-new-task

中提到的新SBT任务

您可以运行任何scala代码作为任务代码。任务也可以接受输入参数。

非常强大的IMO。