環境変数を設定するにはどうすればよいですか(つまり、pomファイルのSystem.getenv("APP_HOME")
によって内部的にアクセスできますか?
APP_HOME=/path/home
私は.profile
でそれを設定できることを知っていますが、pomが同じトリックを行うことができるかどうか疑問に思います。
以下のbmarguliesの提案に従って、私は次のことを試しましたが、運はありません
<build>
<finalName>KvpStore</finalName>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.12.4</version>
<configuration>
<includes>
<include>**/*Test*.Java</include>
</includes>
<environmentVariables>
<APP_NAME>blah_blah</APP_NAME> <------------------------
</environmentVariables>
</configuration>
</plugin>
</plugins>
</build>
Surefireなどの一部のプラグインでは、それらを設定できます。一般的に、pomには方法がありません。
Surefireのドキュメントは here です。 Surefireは、テストの実行中に環境変数を設定しますが、他の環境には設定しません。そして、あなたは確実なフォークを作らなければなりません。
構成では...
<configuration>
<forkMode>always</forkMode>
<environmentVariables>
<var1>val1</var1>
</environmentVariables>
</configuration>