Как мне сделать многопроектную сборку, которая выводит jar для каждого подпроекта? - PullRequest
0 голосов
/ 02 ноября 2018

У меня есть проект с именем Main и 2 подпроекта: One, Two. Вот как выглядит мой build.sbt:

name := "Main"

version := "0.1"

scalaVersion := "2.12.7"

lazy val root = Project(id = "root", base = file("."))  aggregate(one, two) dependsOn(one, two)
lazy val one = Project(id = "one", base = file("One"))
lazy val two = Project(id = "two", base = file("Two")) 

когда я запускаю sbt compile package, я получаю .jar только для Main (Main.jar), но я хочу получить .jar для каждого подпроекта, а не Main: One.jar, Two.jar.

Как мне этого добиться?

Кроме того, я понятия не имею, что означает aggregate(one, two) dependsOn(one, two), мне это даже нужно?

Я также хочу, чтобы каждый подпроект был встроен в толстую банку с sbt-assembly.

1 Ответ

0 голосов
/ 02 ноября 2018

Это на самом деле работает сейчас. Я столкнулся с таким поведением, когда sbt говорил мне, что моя сборка не была упакована, потому что она была обновленной, но затем я начал делать sbt clean assembly вместо sbt assembly, и теперь это работает как шарм.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...