2016-06-02 12 views
0

Ich verwende Tomcat 8.0.35 unter OS X mit IntelliJ Ultimate 2016.1.2. Ich möchte Tomcat lokal unter dem Debugger ausführen und meine Webanwendung darauf bereitstellen. Ich habe eine lokale Tomcat Server-Laufkonfiguration erstellt. Auf der Registerkarte "Bereitstellung" habe ich die zu implementierende WAR-Datei angegeben.IntelliJ Tomcat Run Configuration setzt keine Umgebungsvariablen

Für meine Webanwendung müssen REDIS_HOST_MM und REDIS_PORT_MM Umgebungsvariablen festgelegt werden. Ich setze diese auf der Registerkarte Start/Verbindung der Laufkonfiguration.

Startup/Connection Tab of Tomcat run configuration

Tomcat startet und meine Web-Anwendung setzt jedoch werden die Umgebungsvariablen nicht festgelegt. Ich kann in meinem Web-Anwendungscode in der folgenden Zeile einen Haltepunkt setzen

String _value = System.getenv(value); 

und sehen, dass, wenn value gleich „REDIS_HOST_MM“, der Anruf null zurückgibt.

Ich habe das gleiche Problem, wenn ich die VM-Optionen auf meiner Registerkarte Server auf -DREDIS_HOST_MM=127.0.0.1 -DREDIS_PORT_MM=6379 einstellen. Auch wenn ich das Startup-Skript ändern, um das folgende Shell-Skript

export REDIS_HOST_MM=127.0.0.1 
export REDIS_PORT_MM=6379 
/usr/local/Cellar/tomcat/8.0.35/libexec/bin/catalina.sh run 

Punkt Wenn ich Tomcat außerhalb IntelliJ von der Kommandozeile starten, werden die Umgebungsvariablen richtig eingestellt.

Ist das ein Fehler in IntelliJ, oder soll ich die Umgebungsvariable auf andere Weise setzen?

(Diese ist JetBrains Support-Problem 699091.)

Antwort

4

Es macht nichts. Benutzerfehler Mir war nicht klar, dass Sie Umgebungsvariablen für die Run- und Debug-Konfigurationen separat setzen mussten. Ich hatte sie für Run eingestellt, aber ich habe Debug ausgeführt.

Sobald ich auch die Umgebungsvariablen für die Debug-Konfiguration eingestellt habe, hat alles funktioniert.