在 SBT 中重命名程序集生成的 uberjar



如何重命名和移动使用 SBT 汇编插件生成的 uberjar?

addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.6")

My assemblyMergeStrategy(用于删除 META-INF

(:
assemblyMergeStrategy in assembly := {
case PathList("META-INF", xs @ _*) => MergeStrategy.discard
case x => MergeStrategy.first
}

它生成类似以下内容:

target/scala-2.12/my-project-assembly-0.1.jar 

我希望能够使用一致的名称自动重命名(并在另一个目录中生成((无需单独的脚本(。

您可以在项目页面中找到一些文档。在那里,您可以找到可以为assembly任务重写的键。

您要搜索的是assemblyJarNameassemblyOutputPath.然后,项目生成应如下所示:

lazy val myProject = (project in file(".")).
settings(
...
assemblyJarName in assembly := "myName.jar",
assemblyOutputPath in assembly := "...",
...
)

最新更新