Я хочу выполнить свою задачу несколько раз в моей сборке sbt.Запуск задачи несколько раз в SBT
lazy val sampleTask = taskKey[Unit]("A sample task.")
val dynamic = Def.taskDyn {
println("Called dynamic")
Def.task {
println("Executing dynamic task")
}
}
lazy val library = (project in file("library")).
settings(
sampleTask := {
for (i <- (1 until 4)) {
println(s"Loop $i")
val num = dynamic.value
}
}
)
SBT исполнением кэши по умолчанию задачи и как результат я получаю:
Called dynamic
Executing dynamic task
Loop 1
Loop 2
Loop 3
Я хочу, чтобы запустить динамическую задачу каждый раз, когда она называется, так что я получаю:
Called dynamic
Executing dynamic task
Loop 1
Called dynamic
Executing dynamic task
Loop 2
Called dynamic
Executing dynamic task
Loop 3
Можно ли заставить sbt запускать одну и ту же задачу много раз в одной сборке?
вы хотите запустить динамическую задачу и весь его зависимости каждый раз, или только динамическая задачу? –
Я хочу запускать тесты N раз, после каждого тестового запуска скопировать результат теста, чтобы отделить папку. После выполнения тестов N раз я обработаю все результаты, чтобы найти flaky тесты. Итак, я хочу запускать задачу с ее зависимостями каждый раз. – KrzyH
Думаю, вам нужно будет написать команду вместо задачи. http://www.scala-sbt.org/0.13/docs/Commands.html –