java可执行jar的SBT项目

Syn*_*sso 21 scala executable-jar sbt

将SBT项目的目标包设置为可执行jar文件的最佳方法是什么?

它需要捆绑scala-library.jar并为main-method设置清单.

Tho*_*ney 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")
Run Code Online (Sandbox Code Playgroud)

注意:我将此答案编辑为与当前版本的SBT(0.11+)保持同步.