diff --git a/build.sbt b/build.sbt index 63b408adb..c1098311f 100644 --- a/build.sbt +++ b/build.sbt @@ -230,6 +230,17 @@ lazy val cli = project }, packExcludeArtifactTypes += "pom", resourceGenerators in Compile += packageBin.in(bootstrap).in(Compile).map { jar => + import java.nio.file.Files + import java.nio.charset.StandardCharsets + + val content = Files.readAllBytes(jar.toPath) + val header = + """#!/usr/bin/env sh + |exec java $JAVA_OPTS -noverify -jar "$0" "$@" + """.stripMargin + + Files.write(jar.toPath, header.getBytes(StandardCharsets.UTF_8) ++ content) + Seq(jar) }.taskValue, ProguardKeys.proguardVersion in Proguard := "5.3",