У меня есть несколько проектов, определенных в build.sbt
с разными источниками. Я хочу сохранить корневой проект таким, какой он есть, с его собственным исходным набором (и classpath), но добавить задачу sbt для компиляции и запуска проекта не по умолчанию.
Вот (укороченный) build.sbt
:
lazy val root = project in file(".")
lazy val anotherModule = project in file("modules/another")
lazy val runAnother = taskKey[Unit]("Run a task from anotherModule")
fullRunTask(initialImport, Compile, "another.module.Main")
another.module
фактически находится в modules/another/src
и поэтому не входит в корневой проект.
Когда sbt runAnother
запущен, он не может найти another.module
на пути к классам.
Я не хочу, чтобы проект root
зависел от anotherModule
, потому что, кроме этой задачи, код там не требуется корневому проекту.
Как мне запустить эту задачу с classpath указанного модуля?