gpt4 book ai didi

scala - 将 SBT 变量写入资源

转载 作者:行者123 更新时间:2023-12-04 19:49:24 24 4
gpt4 key购买 nike

在 SBT 中解析某些变量并将其存储到资源文件以便在运行时可用的最简单方法是什么?

更具体地说:我怎样才能获得 sbt-git 插件设置的 version 值,并使其不仅作为工件/程序集 JAR 名称的一部分可用,而且也在资源目录中,所以我可以在运行时访问它,例如在输出上打印,或通过我的 Web 服务的某个版本端点作为服务版本返回?

最佳答案

这是我的代码,用于从纯 git 获取提交并将其与项目版本一起存储在属性文件 path/to/version.properties 可用在包 path.to 中:

resourceGenerators in Compile <+= Def.task {
import scala.sys.process._
val file = (resourceManaged in Compile).value / "path" / "to" / "version.properties"
val gitHash = "git rev-parse HEAD".!!
val gitStatus = "git status".!!
IO.writeLines(file, Seq(
s"project.version = ${version.value}",
s"git.hash = $gitHash",
s"build.date = ${new java.util.Date()}") ++
gitStatus.split("\n").map("#" + _))
Seq(file)
}⏎

关于scala - 将 SBT 变量写入资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43212986/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com