【问题标题】:Java get the hostname and other env var through jenkinsJava 通过 jenkins 获取主机名和其他环境变量
【发布时间】:2017-01-30 00:01:52
【问题描述】:

我正在使用 jenkins 构建我的项目,但我无法使用 java 获取主机名

根据这个java doc我写了以下几行

            System.out.println(System.getenv("MACHINE"));
            System.out.println(System.getenv("HOSTNAME"));

这些是环境变量。但是构建的输出是:

 null
 null

我做错了什么?

【问题讨论】:

  • 这段代码在哪里,你想知道主机名在哪里?这是在詹金斯插件中吗?

标签: java jenkins environment-variables


【解决方案1】:

如果你使用的是 Jenkins 脚本控制台,你可以试试:

println InetAddress.getLocalHost()

关于这个话题有一些很好的讨论here

【讨论】:

  • 谢谢,但我也需要获取另一个环境变量,这样我只能得到 localhost 主机名。
【解决方案2】:

我使用Jenkins Enviromenment Script Plugin解决了这个问题

有了这个插件,我可以运行一个 shell 脚本代码并将值保存为 var 以在构建中使用。

host=$(hostname)
flavor=$(cat /etc/os-release |grep ^'NAME=' |cut -d'=' -f2)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-27
    • 1970-01-01
    • 2019-05-15
    • 2012-05-31
    • 2018-11-10
    相关资源
    最近更新 更多