web-dev-qa-db-fra.com

Tomcat 7 setenv.sh introuvable

J'ai téléchargé et extrait le Apache-Tomcat-7.0 . Conformément aux instructions du fichier RUNNING.txt (% CATALINA_BASE%/RUNNING.txt), vous devez définir JRE_HOME dans le fichier "setenv.sh".

Où se trouve ce fichier? La documentation indique que ce sera dans le répertoire CATALINA_HOME/bin. Cependant ce fichier n'y est pas présent.

18
Prakash Raman

La documentation ne mentionne-t-elle l'absence de fichier setenev.(sh|bat):

(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"

http://Tomcat.Apache.org/Tomcat-7.0-doc/RUNNING.txt

26
Technext

Créez-en un vous-même; cela ne fait pas partie de la distribution. Ce n'est pas si dur. Pour votre cas, ajoutez simplement

JRE_HOME=/path/to/your/Java/installation

dans le fichier et le rendre exécutable (chmod 755 setenv.sh).

Vous pouvez également ajouter d'autres options (par exemple, -Xmx) si nécessaire.

9
mindas

Si vous ne trouvez pas "setenv.sh" ou "setenv.bat" dans le dossier bin de Tomcat, suivez les instructions suivantes:

  1. Créez un nouveau fichier dans le dossier bin de Tomcat.
  2. Renommez-le setenv.sh pour linux user ou setenv.bat pour windows user
  3. Maintenant vous pouvez définir plusieurs choses dans ce fichier:

Réglage de JRE_HOME

Pour linux user 

JRE_HOME=/path/to/jre/jre6

Pour Windows utilisateur

set Java_HOME=C:\Path\to\jre\jdk6

Définition de Java_OPTS

Pour linux user

Java_OPTS="$Java_OPTS -Xms512m -Xmx512m -DFOOBAR_CONFIGURATION_FILE=file:///C:/foobar.properties"

Pour windows user

set "Java_OPTS=%Java_OPTS% -Xms512m -Xmx512m -DFOOBAR_CONFIGURATION_FILE=file:///D:\foobar.properties"

Redémarrez Tomcat après avoir défini les variables .

3
SUDARSHAN BHALERAO

La réponse de l'utilisateur Mindas est tout à fait correcte: il est nécessaire de créer le fichier setenv.sh dans le répertoire CATALINA_HOME ou CATALINA_BASE, comme l'indique le commentaire dans le fichier catalina.sh

Cependant, il existe un problème "poulet et oeuf" dans lequel Tomcat doit deviner l'emplacement du répertoire CATALINA_HOME/bin/ dans le cas où la variable d'environnement CATALINA_HOME n'est pas définie. 

J'ai rencontré cette situation sur un serveur Ubuntu où, heureusement, Tomcat devine correctement le répertoire CATALINA_HOME/bin/. Pour un environnement mono-utilisateur où la personnalisation de Tomcat pour différents utilisateurs n'est pas nécessaire, il semble que définir la variable d'environnement Java_HOME ou JRE_HOME dans le script catalina.sh constituerait une solution au problème "poule et œuf".

0
kirigiri