使用 sbt native packaging 将 fat jar 打包成 debian

Package fat jar into a debian using sbt native packaging

在 运行 "sbt debian:packageBin" 命令中,fakeroot 程序失败,因为它试图在 /target 目录而不是 /target/scala-2.11/ 目录中查找 fat jar(程序集)。

那么,有没有设置使用sbt Debian插件指定debian打包的源码目录?

SBT 版本:0.13.11 在 plugins.sbt 中添加如下: addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.3.4")

在build.sbt中添加了以下内容: lazy val root =(文件中的项目(“。”))。 启用插件(DebianPlugin)

我认为你在这里混淆了一些东西。 SBT native-packager 和 sbt-assembly 解决了同样的问题(创建你可以部署的东西),但方式不同。

如何解决您的 native-packager 问题

查看 installation section in the reader,其中指出:

enablePlugins(JavaAppPackacking)

这会将您的构建配置为创建 JVM 应用程序包。您现在可以 运行 sbt Debian:packageBin

sbt 程序集

您必须自己创建 debian 软件包。汇编只生成一个fat jar。

干杯, 向