Я использую плагин sbt-assembly для создания толстого Jar для моего проекта Scala. Есть ли способ включить идентификатор git commit в манифест jar, что-то похожее на то, что git-commit-id-plugin
делает для maven.
Спасибо
Я использую плагин sbt-assembly для создания толстого Jar для моего проекта Scala. Есть ли способ включить идентификатор git commit в манифест jar, что-то похожее на то, что git-commit-id-plugin
делает для maven.
Спасибо
Старый вопрос, но я иду ...
Вы можете использовать плагин sbt-git с sbt-assembly для включения информации git в ваш MANIFEST.MF
файл.
Для добавления информации в файл MANIFEST.MF
вы можете использовать ключ packageOptions
sbt следующим образом:
import sbt.Package.ManifestAttributes
import com.typesafe.sbt.SbtGit.git
packageOptions := Seq(ManifestAttributes(("Repository-Commit", git.gitHeadCommit.value.get)))
См. пример здесь: spark-authorizer
Эта информация будет храниться в вашем MANIFEST.MF
файле, включенном в толстую банку, сгенерированную sbt-assembly:
Manifest-Version: 1.0
Implementation-Title: spark-authorizer
Repository-Commit: 12538262c1be14800eb820163de6c46cdbd69c99
Implementation-Version: 0.1.0-SNAPSHOT
Specification-Vendor: de.example.playground.spark.authorizer
Specification-Title: spark-authorizer
Implementation-Vendor-Id: de.example.playground.spark.authorizer
Specification-Version: 0.1.0-SNAPSHOT
Implementation-Vendor: de.example.playground.spark.authorizer
Вы можете добавить столько значений, сколько хотите, в packageOptions
. Все они будут включены в файл MANIFEST.MF.