【问题标题】:How to access linux environment variables from maven pom?如何从 maven pom 访问 linux 环境变量?
【发布时间】:2012-12-21 05:47:38
【问题描述】:

我想从 pom.xml 访问 linux 环境变量

我已将WAS_LOCAL_HOST='http://localhost:9081' 添加到

~/.bashrc~/.zsh/rc/env.rc

现在我想从 maven 的pom.xml 访问它。我尝试过${env.WAS_LOCAL_HOST}${WAS_LOCAL_HOST},但我的IntelliJ 仍然将其标记为Cannot resolve symbol env.WAS_LOCAL_HOST

如何从maven正确访问这个变量?

【问题讨论】:

  • 您应该注意根据您的环境进行构建,这根据定义是不可复制的。
  • 你为什么需要这样的环境取决于事情的问题。
  • 我们使用它来将 Jenkins 内部版本号和 svn 修订版(或 git commit)注入到工件 MANIFEST.MF 中,然后再将其上传到我们的 nexus 存储库中。请注意,我们在单独的配置文件中也有此内容。无论何时在本地构建变量,我们都将变量默认为 DEVELOPMENT。

标签: java maven intellij-idea pom.xml


【解决方案1】:

在 pom 中,引用环境变量,例如 MY_VALUE${env.MY_VALUE}。检查this link 了解更多信息。

【讨论】:

    【解决方案2】:

    我不确定这是否适用,但你可以试一试。

    当您将变量添加到~/.bashrc 时,您只需将其添加为可以在shell 中使用的变量。如果您想在系统范围内使用变量,我会尝试输入/etc/profile

    另一方面,在哪里声明这些系统范围的变量有时取决于您使用的 Linux 发行版。 /etc/profile 是您使用 Red Hat 发行版时的最佳选择,但当您使用 Ubuntu 时,用户指南建议在 /etc/environment 中声明它们。您可能应该为您的发行版查找它。

    另外,在声明它们之后不要忘记注销并再次登录。

    【讨论】:

    • “另外,在声明它们之后不要忘记注销并再次登录。” - 或者使用“.~/.bashrc”获取 rc 文件。
    • 我知道有类似的东西,但不记得具体是什么了。感谢您添加此内容!
    猜你喜欢
    • 1970-01-01
    • 2012-12-11
    • 2016-12-18
    • 1970-01-01
    • 2013-01-23
    • 2018-10-18
    • 2019-12-30
    • 1970-01-01
    • 2022-01-04
    相关资源
    最近更新 更多