2016-11-07 12 views
2

Windowsでtomcat 8を実行しています。WindowsでのTomcatのユーザー環境変数の設定

実行するために設定するユーザー環境変数が必要なwebappがあります。

私は、Tomcatを開始し、次のように成功した変数を取得することができます。

set JAVA_HOME=C:\Program Files\Java\jdk1.8.0_65 
set CATALINA_HOME=C:\TOOLS\apache-tomcat-8.0.30 

set CATALINA_BASE=C:\Users\ULUser\tomcat\myapp 
set MY_VAR=%CATALINA_BASE% 
set PATH=%CATALINA_ROOT%\bin;%PATH% 
set CATALINA_OPTS="-Djava.security.properties=%CATALINA_BASE%\conf\java.security.properties" 

%CATALINA_HOME%\bin\catalina.bat run 

しかし、私はすべてのためにグーグルが役立っていないSystem.getenv("MY_VAR");

を使用してMY_VAR変数を取得することはできませんWindowsサービスとして実行するときページには、Java変数とTomcat変数を設定する方法が示されていますが、ユーザー変数を設定する方法は示されていません。

私はTomcatのインスタンスが複数あり、それぞれに異なる環境変数が必要なため、マシン全体に設定できません。

Windows設定ではなくtomcat設定で変数を設定する方法が好きです。

代わりに、tomcatでcontext.xmlファイルを使用し、コンテキスト設定を取得するロジックで値を取得することができます。

私はもともとsuperuserに投稿しましたが、stackoverflowはこの質問のためのより良い場所であることが示唆されました。私がここで良い答えを得たら、それをスーパーユーザーから削除します。

答えて

2

同じ問題があり、それを解決できたばかりです。 adminコマンドプロンプトから

は、次のコマンドを実行します。

tomcat8 //US//YourServiceName ++Environment varname=value 

あなたはセミコロンで区切ることにより、複数の変数を設定することができます(;)またはハッシュ(#)。ドキュメントは非常に明確であるが、それは視覚的表示はどこにもありませんので、あなたが実行した場合を意味し、起こった何でも信じることだけでは難しい:

tomcat8w //ES//YourServiceName 

あなたはどこにでも環境変数は表示されませんGUIの設定ツールを取得するには、しかし、あなたがサービスを実行すると、それはそれを拾うでしょう。それは隠された魔法のようなものです。なぜ彼らが設定パネルのどこかにそれを含めていないのか分からない。

関連する問題