2013-01-07 43 views
7

我想從pom.xml的如何從maven pom訪問linux環境變量?

我已經加入WAS_LOCAL_HOST='http://localhost:9081'可信Linux環境變量

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

現在我想從Maven的pom.xml訪問它。我試過${env.WAS_LOCAL_HOST}${WAS_LOCAL_HOST},但是我的IntelliJ仍然將它標記爲Cannot resolve symbol env.WAS_LOCAL_HOST

如何正確地從maven訪問這個變量?

+1

您應該瞭解如何根據您的環境進行構建,而這種構建在定義上是不可重現的。 – khmarbaise

+0

問題爲什麼你需要這樣的環境依賴的東西。 – khmarbaise

+0

我們使用它將jenkins內部版本號和svn修訂版(或git commit)注入工件MANIFEST.MF,然後將其上載到我們的nexus存儲庫中。請注意,我們也有一個單獨的配置文件。我們默認將這些變量設置爲「開發」,只要它們在本地構建。 – Casey

回答

13

在pom中,指環境變量,例如MY_VALUE${env.MY_VALUE}。請檢查this link瞭解更多信息。

6

我不確定這適用,但你可以放棄它。

當您向~/.bashrc添加變量時,只需將其添加爲可在shell中使用的變量即可。如果你想使用可變系統範圍,我會試着放入/etc/profile

另一方面,聲明這些系統範圍變量的地方有時取決於您使用的Linux發行版。 /etc/profile是您在使用Red Hat發行版時所處的位置,但是當您使用Ubuntu時,用戶指南建議在/etc/environment中聲明它們。你應該查看它的分佈。

另外,聲明後不要忘記註銷並重新登錄。

+2

*「此外,在聲明它們不要忘記註銷並重新登錄之後。」* - 或者使用「。〜/ .bashrc」來源代碼。 –

+0

我知道有這樣的事情,但不記得究竟是什麼。感謝您的加入! – Pieterjan