Java没有找到Jenkins中定义的环境变量

时间:2016-06-24 16:47:09

标签: java linux jenkins centos environment-variables

我有一段代码获取环境变量,如下所示:System.getenv("MY_VAL")

在我的Windows机器上本地工作正常。

但是,在运行CentOS的Jenkins CI服务器上,我遇到了一些问题

我尝试通过envinject插件和全局jenkins设置设置MY_VAL的值

如果我执行预构建步骤以回显值,它可以正常工作,但是在我的java代码中,这个没有得到解决。

如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

您需要将此变量注入property.file,然后从属性文件中访问它。例如在执行shell中,您可以定义“echo MY_VAL = default> property.file”..稍后在后续作业中,您可以使用“Jenkins参数化触发器插件”进行传递,您可以选择从属性文件访问参数。

答案 1 :(得分:1)

您可以通过安装EnvInject插件来实现这一目标。

1)安装完成后,在作业配置屏幕中选中为作业准备环境选项。此选项将显示几个字段供您填写。

<强>更新

2)使用命令touch env.properties填写脚本内容区域以创建文件。

3)通过这样做,在属性内容 t字段中填入您要在最近创建的 env.properties 文件中注入的变量。每行放置一个变量ex:

     VARIABLE1=value
     VARIABLE2=value

4)参考您刚刚在文件路径区域中创建的 env.properties 文件。

5)在运行时,Jenkins将注入这些变量,它们将可供您的程序使用。