web-dev-qa-db-fra.com

Qu'est-ce que le répertoire Tomcat / temp dans Tomcat 7?

Un nouveau téléchargement de Tomcat 7 (j'utilise 7.0.19) contient un répertoire 'temp' contenant le fichier unique, 'safeToDelete.tmp'. À quoi sert ce répertoire pour Tomcat ou comment doit-il être utilisé par les utilisateurs (développeurs) de Tomcat?

18
markonian

Lorsque vous démarrez Tomcat, en utilisant startup.bat (Windows) ou startup.sh, il appelle catalina.bat/catalina.sh respectivement.

Catalina a alors besoin d'un répertoire temporaire à définir. Il le fait en définissant le CATALINA_TMPDIR variable à Tomcat_HOME\temp dossier et l'assigne à Java variable d'environnement système en tant que Java.io.tmpdir.

Ceci est copié de catalina.bat:

rem   CATALINA_TMPDIR (Optional) Directory path location of temporary directory
rem                   the JVM should use (Java.io.tmpdir).  Defaults to
rem                   %CATALINA_BASE%\temp.

CATALINA_BASE est Tomcat_HOME (si exécuté à l'aide du script startup).

Nous continuons:

if not "%CATALINA_TMPDIR%" == "" goto gotTmpdir
set "CATALINA_TMPDIR=%CATALINA_BASE%\temp"

Finalement:

if not "%SECURITY_POLICY_FILE%" == "" goto doSecurity
%_EXECJAVA% %Java_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%Java_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION%
goto end
:doSecurity
%_EXECJAVA% %Java_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%Java_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Djava.security.manager -Djava.security.policy=="%SECURITY_POLICY_FILE%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION%
goto end

Finalement, le Java.io.tmpdir pointe vers le CATALINA_TMPDIR où la JVM écrit des fichiers temporaires, y compris des politiques de stockage sur disque.

25
Buhake Sindi