当前位置: 首页 > 知识库问答 >
问题:

EnvInject未读取环境变量

巫马泰
2023-03-14

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

我使用Scriptler创建了一个Groovy脚本并将结果写入文件。

然后,我使用EnvInject来读取该文件的内容。

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)

知道为什么无法识别环境变量吗?

共有1个答案

闻人鸿文
2023-03-14

您遇到此插件问题JENKINS-39638“无法使用环境变量作为项目密钥”。

 类似资料:
  • 5.3.1 $%envVarName% 当编译时,$%envVarName% 将会被环境变量 envVarName 替换。

  • 注意井 请参阅下面问题的编辑部分,因为进一步的调查已经使这个问题的大部分变得多余。 类似于这个问题,我似乎不能在启动时使用VSCode将环境变量传递给我的应用程序。问题是,我不知道是什么(或者是否)扩展导致了这个问题。 我有VSCode 1.38.1与以下扩展; Java 0.48.0的语言支持 Java扩展包0.8.0 Maven for Java 0.18.2 Spring靴仪表板0.1.6

  • 问题内容: 有没有办法在Node.js代码中读取环境变量? 例如Python的。 问题答案: process.env.ENV_VARIABLE 您要访问的变量的名称在哪里。

  • 在SpringBoot中读取环境变量的最佳方法是什么? 在Java中,我使用了以下方法: 是否可以使用注释来实现?

  • 我遵循了这篇文章中关于如何使用EnvInject插件创建和设置Jenkins环境变量的建议。我在后期构建步骤中使用“注入环境变量”,并设置“属性文件路径” windows批处理脚本创建一个环境变量,并将其写入属性文件:,如: 挑战:仅从结果中提取第一行。txt并跳过其余的行。 如何设置OPS具有所有行作为其值? 我将“属性文件路径”设置为

  • 我正在尝试使用在我的Quarkus应用程序中读取环境变量,但没有成功。我认为仅指定变量名应该就足够了,但它不起作用: 我还尝试在应用程序中指定一个属性。属性 读起来就像 但变量始终为空。 我错过什么了吗?在Quarkus中读取环境变量的正确方法是什么 我正在使用Quarkus 1.2.0。最终的