将SBT项目的目标包设置为可执行jar文件的最佳方法是什么?
需要捆绑scala-library.jar并为main-method设置清单。
答案 0 :(得分:33)
使用assembly-sbt插件(最初由Coda Hale创建,现在由Eugene Yokota维护):https://github.com/sbt/sbt-assembly
将它添加到项目后,它将构建一个所谓的“fatjar”,可以通过java -jar projectName-assembly.jar
执行。它将自动检测您的主要方法 - 如果您的来源中有多个,您可以通过设置mainclass
明确设置要使用的方法,例如:
mainClass in assembly := Some("com.package.ClassNameWithMain")
注意:我将此答案编辑为与当前版本的SBT(0.11 +)保持同步。