这是我的build.gradle
:
group 'whatever'
version '1.0.0-SNAPSHOT'
...
dependencies {
compile 'whatever:2.2.1-SNAPSHOT'
}
我想自动发布过程,其中包括需要设置两个版本的特定值,例如。1.1.0
或2.2.0
仅使用命令行。任何类型的自动增量都不是一种选择。
在Maven中,我会使用maven-versions-plugin
:
mvn versions:set -DnewVersion=${WHATEVER_NEW_VERSION}
我怎么能用Gradle做同样的事情?我只找到this未回答的问题。一定有什么简单的办法吧?
4条答案
按热度按时间holgip5t1#
虽然与发布无关,但传递命令行属性的一种方法如下所示:
考虑以下
build.gradle
代码片段:另一种方法参见this project中的
~/utils/gradle/version.gradle
。它为主要版本、次要版本和增量版本使用单独的环境变量,然后自动构建字符串。因为它位于gradle
目录中,所以可以简单地将其导入到build.gradle
中,这会隐藏一些样板文件。t2a7ltrp2#
我最终将版本号提取到
gradle.properties
中,并使用sed将其作为自动构建脚本的一部分进行更新:这是我想要的虽然对我来说,来自Maven的背景,这似乎不自然。我以后可能会研究另一种选择。
flvlnr443#
我成功地使用了Axion Release Plugin几次,非常满意。功能方面,它最接近Maven的
ckocjqey4#
我在
build.gradle.kts
上添加了这一行不完全等同,但在CI/CD脚本中运行良好。