首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从Gitlab脚本中的kotlin文件中获取versionName/versionCode?

如何从Gitlab脚本中的kotlin文件中获取versionName/versionCode?
EN

Stack Overflow用户
提问于 2018-11-02 19:37:32
回答 1查看 1.2K关注 0票数 0

如何从Gradle(Kotlin-DSL)文件中获得versionNameversionCode,从Gitlab脚本(gitlab-ci.yaml)获得?

我有这两个命令,用于从gradle-groovy中获取它们,但它们不适用于gradle-kotlin-dsl。

代码语言:javascript
复制
- export VERSION_NAME=`egrep '^[[:blank:]]+versionName[[:blank:]]'  app/build.gradle | awk '{print $2}' | sed s/\"//g`
- export VERSION_CODE=`egrep '^[[:blank:]]+versionCode[[:blank:]]'  app/build.gradle | awk '{print $2}'`

groovy中的gradle脚本示例:

代码语言:javascript
复制
android {
    defaultConfig {
        versionCode 1
        versionName "1.0"
    }
}

kotlin中的gradle脚本示例:

代码语言:javascript
复制
android {
    defaultConfig {
        versionCode = 1
        versionName = "1.0"
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-03 10:42:50

我读过关于Regex的文章,并了解了如何实现它。

您应该更改regex以获得versionName/versionCode,因为分配它们的方式改变了。

你应该这样做:

代码语言:javascript
复制
- export VERSION_NAME=`egrep '[[:blank:]]*versionName[[:blank:]]?=[[:blank:]]?\"((\w|\.)+)\"'  app/build.gradle.kts | awk '{print $3}'| sed s/\"//g`
- export VERSION_CODE=`egrep '[[:blank:]]*versionCode[[:blank:]]?=[[:blank:]]?([0-9]+)'  app/build.gradle.kts | awk '{print $3}'`

如果您想了解regex,我建议您在youTube上观看youTube视频。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53124873

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档