首页 > 解决方案 > SBT:工件的自动版本控制

问题描述

我们有一个 Scala 项目,我们正在通过 CI 工具 (TeamCity/Jenkins) 构建它。我们正在寻找一种能够从构建作业本身设置工件的构建版本而不依赖于build.sbt文件中的条目的能力。作为参考,对于 java maven 构建,我们可以使用设置工件版本的目标集版本,而不管我们在 pom.xml 中有什么。我们也在为 SBT 构建寻找类似的东西。

标签: scalasbtversioning

解决方案


我建议看看下一个 sbt 插件:

我们的团队使用sbt-dynverGit 创建版本,因为它更容易。我建议在 git 标签信息之上构建版本,而不是使用 CI 工具(TeamCity/Jenkins)信息 - 例如构建号,因为您可以构建相同的版本两次。

此外,考虑使用https://github.com/sbt/sbt-buildinfo - 另外,通过 API 公开构建版本或打印到输出以快速识别当前部署的应用程序版本。


推荐阅读