gpt4 book ai didi

Java Portable Tomcat 在桌面上创建目录

转载 作者:行者123 更新时间:2023-11-28 22:43:54 26 4
gpt4 key购买 nike

我最近不得不从一位老同事那里接手一个项目;该项目是用 JAVA 编写的,使用 Java Web-Start 并使用轻型 Java 库 (org.apache.catalina.startup.Tomcat)。

每当 Tomcat 服务器启动并且我第一次与 Web 应用程序交互时,它会在 Windows 桌面上创建 3 个目录(store、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

最佳答案

这些是临时目录。如所见here检查 catalina.sh 以获取临时文件夹配置。

关于Java Portable Tomcat 在桌面上创建目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15434572/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com