Tomcat 7的全新下载(我使用的是7.0.19)包含一个包含单个文件'safeToDelete.tmp'的'temp'目录。 Tomcat用于什么目录或Tomcat用户(开发人员)应该如何使用?
答案 0 :(得分:24)
当您使用startup.bat
(Windows)或startup.sh
启动Tomcat时,它会分别调用catalina.bat
/ catalina.sh
。
CATALINA_TMPDIR
变量设置为TOMCAT_HOME\temp
文件夹并将其作为java.io.tmpdir
分配给java系统环境变量来完成此操作。
这是从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
为TOMCAT_HOME
的位置(如果使用startup
脚本运行)。
我们继续:
if not "%CATALINA_TMPDIR%" == "" goto gotTmpdir
set "CATALINA_TMPDIR=%CATALINA_BASE%\temp"
最后:
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
最后,java.io.tmpdir
指向CATALINA_TMPDIR
,其中JVM写入临时文件,包括基于磁盘的存储策略。