我使用jar
生成sbt assembly
但是当我尝试运行jar
时,我收到以下错误。我使用的是scala 2.12.0
,sbt 0.13.8
和assembly 0.14.2
。任何人都可以帮我解决这个错误的含义和解决方案吗?
Error: java.lang.ClassFormatError: Extra bytes at the end of class file
答案 0 :(得分:1)
OP在评论中发布了一个可行的解决方案,但从未将其变为实际答案。由于我今天遇到了同样的问题并且他的评论解决了,我将在下面发布这个解决方案。
来自OP的- 回答,最初发表在评论中 -
使用build.sbt中的以下行解决了
assemblyMergeStrategy in assembly := {
case PathList("META-INF", xs @ _*) => MergeStrategy.discard
case "reference.conf" => MergeStrategy.concat
case x => MergeStrategy.first
}
我只想补充一点,在我的情况下,关键的加法是中间case "reference.conf"
,它必须触发concat
合并策略。