如何修改通过cmd sbt包生成的jar名称

时间:2018-10-12 03:30:14

标签: scala sbt

例如,如果我运行了sbt package,而sbt会生成一个类似project_2.11-version.jar的jar名称,该如何将该名称修改为随机名称?

1 个答案:

答案 0 :(得分:6)

docs的意思是:

  

生成的工件名称由artifactName设置确定。   此设置的类型为(ScalaVersion,ModuleID,Artifact)=>字符串。

默认的实现是:

artifactName := { (sv: ScalaVersion, module: ModuleID, artifact: Artifact) =>
  artifact.name + "-" + module.revision + "." + artifact.extension
}

您可以将此代码复制到build.sbtBuild.scala文件中,并更改其构造伪影名称的方式。例如:

artifactName := { (sv: ScalaVersion, module: ModuleID, artifact: Artifact) =>
  java.util.UUID.randomUUID.toString + "." + artifact.extension
}