如何从Java内部获取jenkins环境变量?

时间:2018-09-06 07:28:55

标签: java jenkins continuous-integration jenkins-pipeline jenkins-cli

我创建了一个Java程序来进行ssh连接并使用scp进行文件传输。我在jenkins中添加了用户名,主机名和密码作为环境变量。我需要在我的java程序中访问这些环境变量的值。

我尝试在我的java文件中使用以下选项,但这没有用。

System.getProperty("HOSTNAME");
System.getenv("HOSTNAME"); 

由于某些安全问题,我无法使用EnvironmentInjectorPlugin。你能给我指出正确的方向吗?

1 个答案:

答案 0 :(得分:0)

我通过在“构建步骤”>“ Maven”>“目标和选项”中传递参数来实现此目的,

Maven:目标和选项

-DHOSTNAME=${HOSTNAME} -DUSERNAME=${USERNAME} -DPASSWORD=${PASSWORD} -q clean install test

并以

的形式从Java文件中检索值
String strUserName = System.getProperty("USERNAME"); 

$ {''}中的值实际上是在jenkins配置中声明的环境变量。