我正在将Jenkins与Testswarm和此插件一起使用(派生资源)。
我想为Testswarm获取一个“工作名称”,其中包含詹金斯的工作名称,内部版本号和svn修订版号。
将JOB_NAME放在配置字段中无济于事,该变量不会被其值替换。
因此,我修改了插件源代码以获取Jenkins环境变量,但我得到的只是“空”变量。
这是罪魁祸首代码。(在第205行的src / main / java / com / javaclimber / jenkins / testswarmplugin / TestSwarmBuilder.java中)
我对此功能进行了很多研究,但没有找到 获取 变量的有效示例。
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,混合模式)
更换
EnvVars envVars = build.getEnvironment(listener);
通过
EnvVars envVars = new EnvVars(); envVars = build.getEnvironment(listener);
做到了…