How to replace the exported products with the result of an assembly in SBT? -
i using sbt 0.13.15 , sbt-assembly 0.14.5. i'm using assembly
task create uber jar contains shaded version of asm no problems. have multi-project build , want other projects in build depend on resulting uber jar instead of compiled class files.
my approach looks this:
exportjars := true exportedproducts in compile := seq(attributed.blank(assembly.value))
unfortunately, sbt hangs indefinitely after output this:
> exportedproducts [info] updating {file:***}... [info] resolving *** ... [info] done updating. [info] compiling ??? java sources ***... [info] packaging *** ... [info] done packaging.
using jvisualvm can see sbt's main thread waiting elements in queue appear, never happens.
what doing wrong?
edit: here's complete example. in build.sbt
:
lazy val root = project .in(file(".")) .aggregate(foo, bar) lazy val foo = project .in(file("foo")) .settings(seq( exportjars := true, exportedproducts in compile := seq(attributed.blank(assembly.value)) )) lazy val bar = project .in(file("bar")) .dependson(foo)
in project/plugins.sbt
:
addsbtplugin("com.eed3si9n" % "sbt-assembly" % "0.14.5")
in project/build.properties
:
sbt.version = 0.13.15
in foo/src/main/scala/helloworld.scala
:
object helloworld extends app { println("hello world!") }
Comments
Post a Comment