Jenkins EnvInject不';不读取环境变量

Jenkins EnvInject不';不读取环境变量,jenkins,groovy,Jenkins,Groovy,在Jenkins中,我试图设置一个动态环境变量 我曾经创建一个Groovy脚本并将结果写入一个文件 然后,我习惯于阅读该文件的内容 Groovy脚本: import jenkins.model.* def GB = build.getEnvVars()["GIT_BRANCH"] def FORMATED_BRANCH = "com.my.package%3Amy-project%3A" + "${GB}".replace("/", "%2F") def file = new File('g

在Jenkins中,我试图设置一个动态环境变量

我曾经创建一个Groovy脚本并将结果写入一个文件

然后,我习惯于阅读该文件的内容

Groovy脚本:

import jenkins.model.*

def GB = build.getEnvVars()["GIT_BRANCH"]
def FORMATED_BRANCH = "com.my.package%3Amy-project%3A" + "${GB}".replace("/", "%2F")

def file = new File('groovyFile')
file.write "FORMATED_BRANCH=${FORMATED_BRANCH}"
设置:

但是,我要设置的环境变量仍然无法识别:

javax.servlet.ServletException: quality.gates.jenkins.plugin.QGException: Environment variable with name 'FORMATED_BRANCH' does not exist.
    at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:796)
    at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
    at org.kohsuke.stapler.MetaClass$5.doDispatch(MetaClass.java:236)
    at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
    at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)

知道环境变量无法识别的原因吗?

您遇到了插件问题“无法将环境变量用作项目密钥”。

您可以尝试返回变量,例如:-返回[Formatted_BRANCH:${Formatted_BRANCH}]如果我返回它,那么我如何从文件中读取它?如何将其传递给EnvInject?请提供您如何在Quality Gates插件中准确使用此环境变量。您无需从文件中再次注入它。因为一旦您返回它,它就会作为预构建参数添加,可以在构建和后构建步骤中使用