У меня есть проект sbt с несколькими подмодулями, которые выглядят так:
--\ root
-- module 1
-- module 2
Используя packageBin, я могу получить два zip-файла: module1.zip и module2.zip .
Это мой build.sbt:
import Dependencies._
import NativePackagerHelper._
lazy val commonSettings = Seq(
organization := "com.zhyea.sbt",
version := "0.1-SNAPSHOT",
scalaVersion := "2.11.12",
exportJars := true,
artifactName := {
(sv: ScalaVersion, module: ModuleID, artifact: Artifact) => artifact.name + "." + artifact.extension
}
)
lazy val module2 = project.settings(commonSettings).settings()
.enablePlugins(JavaAppPackaging, UniversalPlugin)
.settings(libraryDependencies ++= module2Dependencies)
lazy val module1 = project.settings(commonSettings)
.enablePlugins(JavaAppPackaging, UniversalPlugin)
.settings(libraryDependencies ++= module1Dependencies)
lazy val root = project.in(file("."))
.settings(commonSettings)
.aggregate(module2, module1)
.enablePlugins(JavaAppPackaging, UniversalPlugin)
.dependsOn(module2, module1).configs()
mappings in Universal ++= directory("module2/target/universal")
Отображения в каталоге Universal ++ = ("module1 / target / universal")
Теперь я хочу выполнить задачу packageBin в корневом каталоге и добавить zip-модули подмодулей в root.zip.
Проблема заключается в том, что когда корневой модуль выполняет задачу packageBin, задачи packageBin подмодулей еще не завершены, и корень не может получить module1.zip и mudule2.zip.
Как я могу сказать sbt, что нужно выполнить задачу packageBin по порядку?