softwaremill / bootzooka

Simple project to quickly start developing a Scala-based microservice or web application, without the need to write login, user registration etc.
https://softwaremill.github.io/bootzooka/
Apache License 2.0
724 stars 151 forks source link

backend/assembly fails #1267

Open dmiszkiewicz opened 2 weeks ago

dmiszkiewicz commented 2 weeks ago

I'm running sbt clean backend/assembly using openjdk 17.0.11 2024-04-16 LTS and it fails with:

[error] java.lang.RuntimeException: 
[error] Deduplicate found different file contents in the following:
[error]   Jar name = logback-classic-1.5.6.jar, jar org = ch.qos.logback, entry target = module-info.class
[error]   Jar name = logback-core-1.5.6.jar, jar org = ch.qos.logback, entry target = module-info.class
[error]   Jar name = jackson-annotations-2.15.2.jar, jar org = com.fasterxml.jackson.core, entry target = module-info.class
[error]   Jar name = jakarta.activation-1.2.2.jar, jar org = com.sun.activation, entry target = module-info.class
[error]   Jar name = HikariCP-5.1.0.jar, jar org = com.zaxxer, entry target = module-info.class
[error] Deduplicate found different file contents in the following:
[error]   Jar name = jackson-core-2.15.2.jar, jar org = com.fasterxml.jackson.core, entry target = META-INF/versions/9/module-info.class
[error]   Jar name = jackson-databind-2.15.2.jar, jar org = com.fasterxml.jackson.core, entry target = META-INF/versions/9/module-info.class
[error]   Jar name = jackson-dataformat-toml-2.15.2.jar, jar org = com.fasterxml.jackson.dataformat, entry target = META-INF/versions/9/module-info.class
[error]   Jar name = gson-2.10.1.jar, jar org = com.google.code.gson, entry target = META-INF/versions/9/module-info.class
[error]   Jar name = bcprov-jdk18on-1.74.jar, jar org = org.bouncycastle, entry target = META-INF/versions/9/module-info.class
[error]   Jar name = kotlin-stdlib-1.4.10.jar, jar org = org.jetbrains.kotlin, entry target = META-INF/versions/9/module-info.class
[error]   Jar name = slf4j-api-2.0.13.jar, jar org = org.slf4j, entry target = META-INF/versions/9/module-info.class
[error]   Jar name = snakeyaml-2.2.jar, jar org = org.yaml, entry target = META-INF/versions/9/module-info.class
[error]         at sbtassembly.Assembly$.merge(Assembly.scala:628)
[error]         at sbtassembly.Assembly$.$anonfun$assemble$36(Assembly.scala:330)
[error]         at sbtassembly.Assembly$.timed$1(Assembly.scala:228)
[error]         at sbtassembly.Assembly$.$anonfun$assemble$35(Assembly.scala:329)
[error]         at sbtassembly.Assembly$.$anonfun$cachedAssembly$2(Assembly.scala:527)
[error]         at sbt.util.Tracked$.$anonfun$lastOutput$1(Tracked.scala:74)
[error]         at sbtassembly.Assembly$.cachedAssembly(Assembly.scala:531)
[error]         at sbtassembly.Assembly$.assemble(Assembly.scala:414)
[error]         at sbtassembly.Assembly$.$anonfun$assemblyTask$1(Assembly.scala:196)
[error]         at scala.Function1.$anonfun$compose$1(Function1.scala:49)
[error]         at sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:63)
[error]         at sbt.std.Transform$$anon$4.work(Transform.scala:69)
[error]         at sbt.Execute.$anonfun$submit$2(Execute.scala:283)
[error]         at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:24)
[error]         at sbt.Execute.work(Execute.scala:292)
[error]         at sbt.Execute.$anonfun$submit$1(Execute.scala:283)
[error]         at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:265)
[error]         at sbt.CompletionService$$anon$2.call(CompletionService.scala:65)
[error]         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error]         at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
[error]         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error]         at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
[error]         at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[error]         at java.base/java.lang.Thread.run(Thread.java:840)
[error] (backend / assembly) 
[error] Deduplicate found different file contents in the following:
[error]   Jar name = logback-classic-1.5.6.jar, jar org = ch.qos.logback, entry target = module-info.class
[error]   Jar name = logback-core-1.5.6.jar, jar org = ch.qos.logback, entry target = module-info.class
[error]   Jar name = jackson-annotations-2.15.2.jar, jar org = com.fasterxml.jackson.core, entry target = module-info.class
[error]   Jar name = jakarta.activation-1.2.2.jar, jar org = com.sun.activation, entry target = module-info.class
[error]   Jar name = HikariCP-5.1.0.jar, jar org = com.zaxxer, entry target = module-info.class
[error] Deduplicate found different file contents in the following:
[error]   Jar name = jackson-core-2.15.2.jar, jar org = com.fasterxml.jackson.core, entry target = META-INF/versions/9/module-info.class
[error]   Jar name = jackson-databind-2.15.2.jar, jar org = com.fasterxml.jackson.core, entry target = META-INF/versions/9/module-info.class
[error]   Jar name = jackson-dataformat-toml-2.15.2.jar, jar org = com.fasterxml.jackson.dataformat, entry target = META-INF/versions/9/module-info.class
[error]   Jar name = gson-2.10.1.jar, jar org = com.google.code.gson, entry target = META-INF/versions/9/module-info.class
[error]   Jar name = bcprov-jdk18on-1.74.jar, jar org = org.bouncycastle, entry target = META-INF/versions/9/module-info.class
[error]   Jar name = kotlin-stdlib-1.4.10.jar, jar org = org.jetbrains.kotlin, entry target = META-INF/versions/9/module-info.class
[error]   Jar name = slf4j-api-2.0.13.jar, jar org = org.slf4j, entry target = META-INF/versions/9/module-info.class
[error]   Jar name = snakeyaml-2.2.jar, jar org = org.yaml, entry target = META-INF/versions/9/module-info.class
[error] Total time: 18 s, completed Jul 6, 2024, 12:01:03 PM
dmiszkiewicz commented 2 weeks ago

Tried openjdk 21.0.2 2024-01-16 LTS and it's the same

adamw commented 1 week ago

Maybe adding module-info.class to https://github.com/softwaremill/bootzooka/blob/90dfafd7ef5ae924d8d4b265037182da787a8321/build.sbt#L146 would fix the problem?