VSTS Gradle构建任务的构建令牌无法解析

时间:2018-03-23 08:22:25

标签: azure-devops azure-pipelines

为了拥有Android构建的唯一版本代码,我们将版本代码作为参数传递给gradle构建任务。参数值采用以下格式:$(Year:yy)$(DayOfYear)$(rev:r)。

从日志构建命令:

[command] C:\ Windows \ system32 \ cmd.exe / D / S / C“D:\ a \ 3 \ s \ gradlew.bat”-PversionCode = $(Year:yy)$(DayOfYear)$ (rev:r)“build”

构建令牌未解析。错误详情如下:

评估项目':app'时出现问题。 对于输入字符串:“$(Year:yy)$(DayOfYear)$(rev:r)”

1 个答案:

答案 0 :(得分:2)

这些变量不是内置的构建变量,但可以用作构建号格式。

关于您的环境,您可以通过Logging Command添加/更新变量。

例如:

  1. 将内部版本号格式设置为$(Year:yy)$(DayOfYear).$(rev:r)或其他(只想检索rev:r的值)
  2. 添加PowerShell任务以添加变量(PversionCode
  3. 脚本:

    $date = get-date
    $year=$date.year
    $dayOfYear=$date.DayofYear
    write-Host $(Build.BuildNumber)
    $r="$(Build.BuildNumber)".split(".")[-1]
    Write-Host "##vso[task.setvariable variable=PversionCode;]$year$dayOfYear$r"
    
    1. 在Gradle任务中使用(选项:-PversionCode=$(PversionCode)