Я новичок в разработке задач в SBT
, и я пытаюсь выяснить, как создать задачу, которая интегрирует мой существующий код.Как создать задачу в SBT, которая вызывает метод?
В моем коде у меня есть объект одноплодной, который имеет run
метод, который требует нескольких параметров
object MyObject {
def run(param1: String, param2: Int, param3: String, ...) = {}
}
Мой вопрос: Как я могу определить задачу в SBT
, что вызывает мой run
метод с указанием всех его параметров в мой файл build.sbt
?
Я могу себе представить что-то подобное в build.sbt
lazy val myTask: TaskKey[Seq[File]] = taskKey[Seq[File]]("My task")
lazy val myTaskRun = (sourceManaged, dependencyClasspath in Compile, runner in Compile, streams) map { (dir, cp, r, s) =>
val param1 = ...
val param2 = ...
val param3 = ...
val paramN = ....
MyObject.run(param1, param2, param3, ...)
Seq(file("path"))
}
Если объект является частью вашей сборки, вы можете просто называть его так, как вы написали. Файл должен находиться в каталоге 'project' – dmitry