Festlegen von Benutzerumgebungsvariablen für Tomcat unter Windows

1

Ich verwende Tomcat 8 unter Windows 2012.

Ich besitze eine Webanwendung, für deren Ausführung eine Benutzerumgebungsvariable festgelegt werden muss.

Ich kann Tomcat starten und die Variable folgendermaßen erfolgreich abrufen:

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

Wenn ich jedoch als Windows-Dienst ausgeführt werde, kann ich die MY_VARVariable nicht mit abrufenSystem.getenv("MY_VAR");

Googeln hat nicht geholfen, da auf allen Seiten gezeigt wird, wie die Java- und Tomcat-Variablen festgelegt werden, nicht jedoch, wie Benutzervariablen festgelegt werden.

Ich kann es nicht für den gesamten Computer festlegen, da ich mehrere Tomcat-Instanzen habe und jede eine andere Umgebungsvariable benötigt.

Ich würde eine Methode bevorzugen, bei der die Variable in der Tomcat-Konfiguration festgelegt wird, und nicht in der Windows-Konfiguration.

Meine Alternative ist, die Datei context.xml in Tomcat zu verwenden und den Wert mit einer Logik abzurufen, die die Kontexteinstellungen abruft.

Michael Potter
quelle
Stackoverflow ist dafür besser.
Ungeheuer