gpt4 book ai didi

shell - Gradle:无法使用shell命令初始化变量

转载 作者:行者123 更新时间:2023-12-03 05:44:03 24 4
gpt4 key购买 nike

我想通过build.gradle文件中的一些shell命令来初始化一些变量

def YEAR_MONTH_DAY=['date +%F'].execute().text.trim()
def BUILD_DATE=['date -u +%FT%T.%3NZ)'].execute().text.trim()
def IMAGE_NAME ='bca/cab-imaging'
def SHORT_VCS_REF=['git rev-parse --short HEAD'].execute().text.trim()
def VERSION=YEAR_MONTH_DAY+'-'+SHORT_VCS_REF

但是我明白了
> Cannot run program "date +%F": error=2, No such file or directory

我究竟做错了什么?如何通过shell命令初始化变量?

我也试过
def YEAR_MONTH_DAY= new ByteArrayOutputStream()
exec{
commandLine "sh","date +%F"
standardOutput = YEAR_MONTH_DAY;
}

但是我得到了
> Process 'command 'sh'' finished with non-zero exit value 127

最佳答案

这是我的做法

project.ext.IMAGE_NAME='bca/cab-imaging'
project.ext.BUILD_DATE= new Date().format("yyyy-MM-dd'T'HH:mm:ss.SSSZ")
project.ext.YEAR_MONTH_DAY=new Date().format('yyyy-MM-dd')
project.ext.SHORT_VCS_REF=new ByteArrayOutputStream()
exec{
commandLine 'git','rev-parse', '--short', 'HEAD'
standardOutput = SHORT_VCS_REF;
}
project.ext.VERSION=project.YEAR_MONTH_DAY+"-"+"$SHORT_VCS_REF"

然后我就可以将它们作为 project.VERSION等访问。

关于shell - Gradle:无法使用shell命令初始化变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51029617/

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