2013-03-15 63 views
0

我最近不得不从一位老同事接管一个项目;这个项目是用JAVA编写的,使用Java Web-Start并使用轻型Java库(org.apache.catalina.startup.Tomcat)。Java便携式Tomcat在桌面上创建目录

每当Tomcat服务器启动时,我首先与Web应用程序交互,就会在Windows桌面上创建3个目录(存储,sys,temp)。

当我查看普通的Tomcat安装时,这些目录存在于tomcatHome \ bin \目录中。

问题

有谁知道如何把这些目录的创建重定向到我C:\ TomcatHome \目录?

下面是我的代码片段:

import org.apache.catalina.startup.Tomcat; 
import org.apache.catalina.Context; 
import org.apache.catalina.LifecycleException; 
import org.apache.catalina.loader.WebappLoader; 

... 

// Define the user.dir directory. 
System.setProperty("user.dir", "C:\\TomcatHome"); 
// Print out the user.dir and user.home system variables. 
System.out.println("user.dir = " + System.getProperty("user.dir")); 
System.out.println("user.home = " + System.getProperty("user.home")); 

... 

Tomcat m_tomcat = new Tomcat(); 
m_tomcat.setBaseDir("C:\\TomcatHome"); 
m_tomcat.setPort(5009); 
m_tomcat.getHost().setDeployOnStartup(true); 
m_tomcat.getHost().setAutoDeploy(true); 
m_tomcat.getHost().setAppBase("C:\\TomcatHome\\webapps"); 
m_tomcat.getServer().setPort(5109); 
m_tomcat.getServer().setShutdown("SHUTDOWN"); 

... 

// Add abc web-application to Tomcat. 
Context ctx = m_tomcat.addWebapp(null, "/abc", "abc"); 
ctx.setLoader(new WebappLoader(class.getClassLoader())); 
// Add xyz web-application to Tomcat. 
ctx = m_tomcat.addWebapp(null, "/xyz", xyz); 
ctx.setLoader(new WebappLoader(class.getClassLoader())); 
// Add ROOT folder to Tomcat. 
ctx = m_tomcat.addWebapp(null, "", "ROOT"); 
ctx.setLoader(new WebappLoader(class.getClassLoader())); 

... 

m_tomcat.start(); 

此代码打印出:

user.dir = C:\TomcatHome 
user.home = C:\Users\myName 

回答

2

这些都是临时目录。如图所示here检查catalina.sh的临时文件夹配置。

+0

感谢您的快速回复......但我的应用程序正在使用便携式/轻量级,无论您想调用它,Tomcat的版本。有没有catalina.sh文件,我可以看到:( – MattWeiler 2013-03-15 14:40:34

+0

我应该补充一点,我试图设置CATALINA_TMPDIR系统变量在运行Tomcat实例之前,它并没有改变临时文件的位置。 – MattWeiler 2013-03-15 15:02:13

+0

我也尝试设置catalina.home和catalina.base系统变量作为Tomcat.setBaseDir(...)方法JavaDoc的状态,但是这并没有改变位置,我觉得这可能是org.apache.catalina中的一个错误。 startup.Tomcat类 – MattWeiler 2013-03-15 15:25:08