首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jenkins插件-环境变量

Jenkins插件-环境变量
EN

Stack Overflow用户
提问于 2013-01-08 11:45:54
回答 4查看 8.1K关注 0票数 4

我将Jenkins与Testswarm和这个插件 (分叉源)结合使用。

我想要一个测试群的“作业名”,其中包含Jenkins作业名、生成号和svn修订号。

在configuration字段中放置JOB_NAME没有帮助,变量不会被它的值替换。

因此,我修改了插件源代码以获得Jenkins环境变量,但我得到的只是“null”。

这是罪魁祸首代码。(从第205行的src/main/java/com/javaclimber/jenkins/testswarmplugin/TestSwarmBuilder.java中)

我对这个功能进行了大量的研究,但是我没有找到一个获取变量的工作示例。

代码语言:javascript
复制
public boolean perform(AbstractBuild build, Launcher launcher, BuildListener listener) throws InterruptedException, IOException {
    ...
EnvVars envVars = build.getEnvironment(listener);
    ...
    envVars.get("JOB_NAME")
}

在Java中,我并不自在,在这一点上我被困住了。有人认识吗,拜托?

更新: java使用的版本

java版本"1.6.0_24“

OpenJDK运行时环境(IcedTea6 1.11.5) (6b24-1.11.5-0ubuntu1~10.04.2)

OpenJDK 64位服务器VM (构建20.0-b12,混合模式)

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-01-09 08:25:57

顶替

代码语言:javascript
复制
EnvVars envVars = build.getEnvironment(listener);

通过

代码语言:javascript
复制
EnvVars envVars = new EnvVars();
envVars = build.getEnvironment(listener);

成功了..。

票数 9
EN

Stack Overflow用户

发布于 2013-01-08 17:36:35

您使用的是什么版本的Java?根据,要获得环境变量,需要添加以下内容:

代码语言:javascript
复制
String job_name = System.getenv("JOB_NAME");

你试过这个吗?

另外,我不知道配置字段是什么样子,但是您尝试使用$JOB_NAME而不是JOB_NAME吗?

票数 1
EN

Stack Overflow用户

发布于 2020-03-20 21:25:00

Jenkins管道似乎在服务器上执行,因此原始post可能缺少为代理定义的变量(通过服务器的代理定义或通过代理的操作系统)。

我不知道詹金斯管道如何获得代理人的环境。

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

https://stackoverflow.com/questions/14214249

复制
相关文章

相似问题

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