我认为您不能仅仅为了universal:packageBin
轻松更改生成的工件的名称。
您可以通过使用全局更改生成的工件的名称artifactName
。
artifactName := { (sv: ScalaVersion, module: ModuleID, artifact: Artifact) =>
artifact.name + module.revision + "_dist." + artifact.extension
}
然而,这也会修改生成的 jar 文件的名称,并且可能还会修改生成的工件的其他名称。
如果您只想更改由 生成的文件的名称,universal:packageBin
您可以在生成文件后重命名该文件。Sbt 为您提供实用程序,使这变得相当容易。
Universal / packageBin := {
val originalFileName = (Universal / packageBin).value
val (base, ext) = originalFileName.baseAndExt
val newFileName = file(originalFileName.getParent) / (base + "_dist." + ext)
IO.move(originalFileName, newFileName)
newFileName
}
现在调用Universal/packageBin
应该执行您的新任务,这将在文件创建后重命名文件。