【问题标题】:How is the Tomcat temp directory location defined?Tomcat 临时目录位置是如何定义的?
【发布时间】:2012-12-04 23:47:29
【问题描述】:
我正在运行与 Liferay5.2.3 捆绑在一起的 Tomcat,并使用 Eclipse 3.5 (Galileo) 作为我的 IDE。我根据这个博客条目在 Eclipse 中设置了我的 Tomcat 服务器:http://www.jroller.com/holy/entry/developing_portlets_for_liferay_in。如果我通过 Eclipse 服务器配置启动 Tomcat,Liferay/Tomcat 使用我的 C:\Documents and Settings\user\Local Settings\Temp\ 目录。但是,如果我直接使用 startup.bat 脚本启动 Tomcat,Liferay/Tomcat 将使用 Tomcat 临时目录。我不知道是 Eclipse、Liferay 还是 Tomcat 决定使用哪个临时目录或如何更改它。我更喜欢使用 Tomcat 临时目录。
Lifera/Tomcat 捆绑包 5.5 和 6.0(liferay-portal-tomcat-6.0-5.2.3.zip 和 liferay-portal-tomcat-5.5-5.2.3.zip)都有这个问题。
有人有线索吗?
【问题讨论】:
标签:
eclipse
tomcat
directory
liferay
temp
【解决方案1】:
当您使用 catalina.sh(或 catalina.bat)启动 Tomcat 时,使用 CATALINA_TMPDIR 变量设置临时目录:
if [ -z "$CATALINA_TMPDIR" ] ; then
# Define the java.io.tmpdir to use for Catalina
CATALINA_TMPDIR="$CATALINA_BASE"/temp
fi
您还可以在 Eclipse 中启动 Tomcat 时将其作为 VM 参数传递以将其用作临时目录。
-Djava.io.tmpdir="C:\Program Files\liferay-portal-5.2.3-tomcat-6.0\tomcat-6.0.18\temp"
【解决方案2】:
虽然我仍然不知道 Tomcat 在哪里/如何确定默认临时目录应该在哪里,也不知道为什么 Eclipse 将它设置为不同的东西,但我发现您可以通过 VM 参数设置临时目录在 Eclipse 中启动 Tomcat 时:
-Djava.io.tmpdir="C:\Program Files\liferay-portal-5.2.3-tomcat-6.0\tomcat-6.0.18\temp"
【解决方案3】:
您可以在工作区中找到以下文件夹结构:
.metadata.plugins\org.eclipse.wst.server.core\tmp0\
这里可以找到eclipse中tomcat附带的文件夹。