我有一个简单的 Java 项目,它使用 gradle 创建 JAR。该项目在 gitlab 存储库中集中管理,并使用 Gitlab CI 构建。如果某个分支中的每个提交都被视为“已发布”(即不是快照),我没问题。
大多数插件尝试做很多事情,但增加了很多复杂性和困惑。我只需要一些非常简单和干净的东西。我可以只使用 gradle.properties 来管理主要版本和次要版本,并使用 Gitlab 的 CI_PIPELINE_IID 作为“补丁”。如果可能的话,我也可以接受比这更简单的事情。
有人有可以轻松管理版本的示例项目吗?
最佳答案
我找到了一种将它们组合在一起的方法......
gradle.属性:
majorVersion=1
minorVersion=2
构建.gradle
..
version "${majorVersion}.${minorVersion}.${System.env.CI_PIPELINE_IID?:'dev'}"
..
我正在使用 Spring Boot,因此我只需执行 gradle bootJar
即可,并且版本正确的 JAR 会显示在 build/libs
中。如果构建是在 Gitlab CI 之外进行的,则 JAR 以 dev
结尾,而不是 CI_PIPELINE_IID
值。当然,CI_PIPELINE_IID 可以设置为开发计算机上的任何值。
关于java - Gradle 项目的简单版本控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52731489/