Ich habe das Apache-Tomcat-7.0 heruntergeladen und extrahiert. Gemäß den Anweisungen in der Datei RUNNING.txt (% CATALINA_BASE%/RUNNING.txt) sollte JRE_HOME in der Datei "setenv.sh" festgelegt werden.
Wo befindet sich diese Datei? Die Dokumentation sagte, es würde sich im Verzeichnis CATALINA_HOME/bin befinden. Diese Datei ist dort jedoch nicht vorhanden.
Die Dokumentation do erwähnt das Fehlen der setenev.(sh|bat)
-Datei:
(3.4) Using the "setenv" script (optional, recommended)
Apart from CATALINA_HOME and CATALINA_BASE, all environment variables can
be specified in the "setenv" script. The script is placed either into
CATALINA_BASE/bin or into CATALINA_HOME/bin directory and is named
setenv.bat (on Windows) or setenv.sh (on *nix). The file has to be
readable.
By default the setenv script file is absent. If the script file is present
both in CATALINA_BASE and in CATALINA_HOME, the one in CATALINA_BASE is
preferred
For example, to configure the JRE_HOME and CATALINA_PID variables you can
create the following script file:
On Windows, %CATALINA_BASE%\bin\setenv.bat:
set "JRE_HOME=%ProgramFiles%\Java\jre6"
exit /b 0
On *nix, $CATALINA_BASE/bin/setenv.sh:
JRE_HOME=/usr/Java/latest
CATALINA_PID="$CATALINA_BASE/Tomcat.pid"
Erstelle einfach selbst einen; es ist nicht Teil der Verteilung. Es ist nicht so schwer. Für Ihren Fall einfach hinzufügen
JRE_HOME=/path/to/your/Java/installation
in die Datei und machen sie ausführbar (chmod 755 setenv.sh
).
Sie können bei Bedarf auch andere Optionen hinzufügen (z. B. -Xmx
).
Wenn Sie "setenv.sh" oder "setenv.bat" im Ordner "bin" von Tomcat nicht finden, folgen Sie den folgenden Anweisungen:
setenv.sh
für linux user oder setenv.bat
für windows user umJRE_HOME einstellen
Für Linux Benutzer
JRE_HOME=/path/to/jre/jre6
Für Windows Benutzer
set Java_HOME=C:\Path\to\jre\jdk6
Java_OPTS setzen
Für Linux Benutzer
Java_OPTS="$Java_OPTS -Xms512m -Xmx512m -DFOOBAR_CONFIGURATION_FILE=file:///C:/foobar.properties"
Für Windows Benutzer
set "Java_OPTS=%Java_OPTS% -Xms512m -Xmx512m -DFOOBAR_CONFIGURATION_FILE=file:///D:\foobar.properties"
Tomcat nach dem Setzen von Variablen neu starten .
Die Antwort von User Mindas ist völlig korrekt: Die setenv.sh
-Datei muss entweder im CATALINA_HOME
- oder CATALINA_BASE
-Verzeichnis erstellt werden, wie der Kommentar in der catalina.sh
-Datei anzeigt.
Es gibt jedoch ein "Huhn und Ei" -Problem, bei dem Tomcat die Position des CATALINA_HOME/bin/
-Verzeichnisses erraten muss, wenn die Umgebungsvariable CATALINA_HOME
nicht festgelegt ist.
Ich bin dieser Situation auf einem Ubuntu-Server begegnet, wo Tomcat zum Glück das CATALINA_HOME/bin/
-Verzeichnis richtig erraten hat. In einer Einzelbenutzerumgebung, in der eine Anpassung von Tomcat für verschiedene Benutzer nicht erforderlich ist, scheint das Festlegen der Umgebungsvariable Java_HOME
oder JRE_HOME
im Skript catalina.sh
eine Lösung für das Problem "Chicken and Egg" zu sein.