2013-02-22 10:19 Tomcat下获取当前类的路径中含有空格的解决方案

本文探讨了在使用Tomcat部署Web项目时,由于路径中存在%20转义符导致的文件操作异常问题,并提供了使用字符串replace方法进行解决的方案。通过实例演示了三种不同的获取类加载器路径的方法,并最终实现了对路径的正确处理,避免了未知错误的出现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

web项目发布到Tomcat之后,如果tomcat是安装在比如

C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\****

那么你获取当前类的路径的时候,就会出现问题,因为它会报出%20

C:\Program%20Files\Apache%20Software%20Foundation\Tomcat 6.0\webapps\****


这个时候你再做一些关于文件的操作,程序就挂了,报一些未知错误,那么解决方案就是使用字符串的replace方法,进行字符串替换即可.

 

//获取当前类加载器,并找到指定目录POOLCONFIG_FOLDER是之前设置好的static 变量

String path = Thread.currentThread().getContextClassLoader().getResource(POOLCONFIG_FOLDER).getPath();

//进行字符串替换

path = path.replace("%20", " ");



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
public class DBUtil
{
      
    private static String POOLCONFIG_FOLDER = "pools";
      
    private static void init()
    {
        /**
         * 方法一,利用当前类加载器1
         */
        // URL url = Thread.currentThread().getContextClassLoader().getResource(POOLCONFIG_FOLDER);
        // String path = url.getFile();
        // path = path.replace("%20", " ");
        //  File folder = new File(path);
          
        /**
         * 方法二,利用当前类加载器2
         */
        //String path = DBUtil.class.getClassLoader().getResource(POOLCONFIG_FOLDER).getPath();
        //path = path.replace("%20", " ");
        // File folder = new File(path);
          
          
        /**
         * 方法三,利用当前线程类加载器
         */
        String path = Thread.currentThread().getContextClassLoader().getResource(POOLCONFIG_FOLDER).getPath();
        path = path.replace("%20"" ");
        File folder = new File(path);
        logger.debug("path :" + path);
        if (folder.isDirectory())
        {
            File[]fileList = folder.listFiles();
            for (int i = 0, len = fileList.length; i < len; i++)
            {
                try
                {
                    File file = fileList[i];
                    String name = file.getName();
                    name = name.substring(0, name.lastIndexOf("."));
                    InputStream input = new FileInputStream(file);
                    Properties props = new Properties();
                    props.load(input);
                    loadPoolConfig(name, props);
                }
                catch (Exception e)
                {
                    e.printStackTrace();
                    logger.info("加载DBUtil出现问题。。。。。");
                    logger.error(e.getMessage());
                }
            }
        }
    }
}
NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED 24-Jun-2025 23:56:57.046 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Server.服务器版本: Apache Tomcat/9.0.106 24-Jun-2025 23:56:57.052 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 服务器构建: Jun 5 2025 19:02:30 UTC 24-Jun-2025 23:56:57.052 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 服务器版本号: 9.0.106.0 24-Jun-2025 23:56:57.053 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 操作系统名称: Windows 11 24-Jun-2025 23:56:57.053 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log OS.版本: 10.0 24-Jun-2025 23:56:57.053 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 架构: amd64 24-Jun-2025 23:56:57.055 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Java 环境变量: D:\soft\jdk-21 24-Jun-2025 23:56:57.055 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Java虚拟机版本: 21.0.7+8-LTS-245 24-Jun-2025 23:56:57.055 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log JVM.供应商: Oracle Corporation 24-Jun-2025 23:56:57.056 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE: C:\Users\aimi\AppData\Local\JetBrains\IntelliJIdea2025.1\tomcat\6e8c1cb4-4072-41c6-9443-2a38786e6fec 24-Jun-2025 23:56:57.056 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME: D:\soft\apache-tomcat-9.0.106-windows-x64\apache-tomcat-9.0.106 24-Jun-2025 23:56:57.057 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: --add-opens=java.base/java.lang=ALL-UNNAMED 24-Jun-2025 23:56:57.057 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: --add-opens=java.base/java.lang.invoke=ALL-UNNAMED 24-Jun-2025 23:56:57.057 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: --add-opens=java.base/java.lang.reflect=ALL-UNNAMED 24-Jun-2025 23:56:57.058 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: --add-opens=java.base/java.io=ALL-UNNAMED 24-Jun-2025 23:56:57.058 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: --add-opens=java.base/java.util=ALL-UNNAMED 24-Jun-2025 23:56:57.058 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: --add-opens=java.base/java.util.concurrent=ALL-UNNAMED 24-Jun-2025 23:56:57.059 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED 24-Jun-2025 23:56:57.059 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Djava.util.logging.config.file=C:\Users\aimi\AppData\Local\JetBrains\IntelliJIdea2025.1\tomcat\6e8c1cb4-4072-41c6-9443-2a38786e6fec\conf\logging.properties 24-Jun-2025 23:56:57.059 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager 24-Jun-2025 23:56:57.059 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcom.sun.management.jmxremote= 24-Jun-2025 23:56:57.061 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcom.sun.management.jmxremote.port=1099 24-Jun-2025 23:56:57.061 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcom.sun.management.jmxremote.ssl=false 24-Jun-2025 23:56:57.061 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcom.sun.management.jmxremote.password.file=C:\Users\aimi\AppData\Local\JetBrains\IntelliJIdea2025.1\tomcat\6e8c1cb4-4072-41c6-9443-2a38786e6fec\jmxremote.password 24-Jun-2025 23:56:57.062 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcom.sun.management.jmxremote.access.file=C:\Users\aimi\AppData\Local\JetBrains\IntelliJIdea2025.1\tomcat\6e8c1cb4-4072-41c6-9443-2a38786e6fec\jmxremote.access 24-Jun-2025 23:56:57.062 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Djava.rmi.server.hostname=127.0.0.1 24-Jun-2025 23:56:57.062 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Djdk.tls.ephemeralDHKeySize=2048 24-Jun-2025 23:56:57.062 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources 24-Jun-2025 23:56:57.063 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dsun.io.useCanonCaches=false 24-Jun-2025 23:56:57.063 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dignore.endorsed.dirs= 24-Jun-2025 23:56:57.063 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcatalina.base=C:\Users\aimi\AppData\Local\JetBrains\IntelliJIdea2025.1\tomcat\6e8c1cb4-4072-41c6-9443-2a38786e6fec 24-Jun-2025 23:56:57.063 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcatalina.home=D:\soft\apache-tomcat-9.0.106-windows-x64\apache-tomcat-9.0.106 24-Jun-2025 23:56:57.064 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Djava.io.tmpdir=D:\soft\apache-tomcat-9.0.106-windows-x64\apache-tomcat-9.0.106\temp 24-Jun-2025 23:56:57.068 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent 使用APR版本[1.7.4]加载了基于APR的Apache Tomcat本机库[1.3.1]。 24-Jun-2025 23:56:57.069 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR功能:IPv6[true]、sendfile[true]、accept filters[false]、random[true]、UDS [true]。 24-Jun-2025 23:56:57.069 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR/OpenSSL配置:useAprConnector[false],useOpenSSL[true] 24-Jun-2025 23:56:57.077 信息 [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL成功初始化 [OpenSSL 3.0.14 4 Jun 2024] 24-Jun-2025 23:56:57.382 信息 [main] org.apache.coyote.AbstractProtocol.init 初始化协议处理器 ["http-nio-8080"] 24-Jun-2025 23:56:57.410 信息 [main] org.apache.catalina.startup.Catalina.load 服务器在[699]毫秒内初始化 24-Jun-2025 23:56:57.468 信息 [main] org.apache.catalina.core.StandardService.startInternal 正在启动服务[Catalina] 24-Jun-2025 23:56:57.468 信息 [main] org.apache.catalina.core.StandardEngine.startInternal 正在启动 Servlet 引擎:[Apache Tomcat/9.0.106] 24-Jun-2025 23:56:57.483 信息 [main] org.apache.coyote.AbstractProtocol.start 开始协议处理句柄["http-nio-8080"] 24-Jun-2025 23:56:57.552 信息 [main] org.apache.catalina.startup.Catalina.start [140]毫秒后服务器启动 已连接到服务器 配置错误: 部署源 'e-commerce-system.war' 无效[2025-06-24 11:56:57,944] 工件 e-commerce-system.war: 部署工件时出错。请参阅服务器日志了解详细信息。 [2025-06-24 11:56:57,944] 工件 e-commerce-system:war: 正在部署工件,请稍候… 24-Jun-2025 23:57:02.160 警告 [RMI TCP Connection(2)-127.0.0.1] org.apache.tomcat.util.descriptor.web.WebXml.setVersion 未知版本字符串 [5.0]。将使用默认版本。 24-Jun-2025 23:57:05.797 信息 [RMI TCP Connection(2)-127.0.0.1] org.apache.jasper.servlet.TldScanner.scanJars 至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。 在扫描期间跳过不需要的JAR可以缩短启动时间和JSP编译时间。 [2025-06-24 11:57:05,896] 工件 e-commerce-system:war: 工件已成功部署 [2025-06-24 11:57:05,896] 工件 e-commerce-system:war: 部署已花费 7,952 毫秒 24-Jun-2025 23:57:07.494 信息 [Catalina-utility-1] org.apache.catalina.startup.HostConfig.deployDirectory 把web 应用程序部署到目录 [D:\soft\apache-tomcat-9.0.106-windows-x64\apache-tomcat-9.0.106\webapps\manager] 24-Jun-2025 23:57:07.571 信息 [Catalina-utility-1] org.apache.jasper.servlet.TldScanner.scanJars 至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。 在扫描期间跳过不需要的JAR可以缩短启动时间和JSP编译时间。 24-Jun-2025 23:57:07.586 信息 [Catalina-utility-1] org.apache.catalina.startup.HostConfig.deployDirectory Web应用程序目录[D:\soft\apache-tomcat-9.0.106-windows-x64\apache-tomcat-9.0.106\webapps\manager]的部署已在[91]毫秒内完成
06-26
D:\apache-tomcat-9.0.98\bin\catalina.bat run Using CATALINA_BASE: "C:\Users\86185\AppData\Local\JetBrains\IntelliJIdea2023.3\tomcat\68464c08-0e10-4088-be4d-3f32857be15b" Using CATALINA_HOME: "D:\apache-tomcat-9.0.98" Using CATALINA_TMPDIR: "D:\apache-tomcat-9.0.98\temp" Using JRE_HOME: "C:\Users\86185\.jdks\ms-17.0.15" Using CLASSPATH: "D:\apache-tomcat-9.0.98\bin\bootstrap.jar;D:\apache-tomcat-9.0.98\bin\tomcat-juli.jar" Using CATALINA_OPTS: "" NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED [2025-05-09 09:57:54,030] 工件 fruit-shop:war exploded: 正在等待服务器连接以启动工件部署… 09-May-2025 09:57:55.112 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Server.鏈嶅姟鍣ㄧ増鏈�: Apache Tomcat/9.0.98 09-May-2025 09:57:55.114 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log 鏈嶅姟鍣ㄦ瀯寤�: Dec 5 2024 19:50:29 UTC 09-May-2025 09:57:55.114 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log 鏈嶅姟鍣ㄧ増鏈彿: 9.0.98.0 09-May-2025 09:57:55.115 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log 鎿嶄綔绯荤粺鍚嶇О: Windows 11 09-May-2025 09:57:55.115 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log OS.鐗堟湰: 10.0 09-May-2025 09:57:55.115 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log 鏋舵瀯: amd64 09-May-2025 09:57:55.115 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Java 鐜鍙橀噺: C:\Users\86185\.jdks\ms-17.0.15 09-May-2025 09:57:55.115 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Java铏氭嫙鏈虹増鏈�: 17.0.15+6-LTS 09-May-2025 09:57:55.115 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log JVM.渚涘簲鍟�: Microsoft 09-May-2025 09:57:55.116 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log CA
05-10
server.xml设置: <Connector port="22" protocol="HTTP/1.1" SSLEnabled="true" scheme="http" secure="true" keystoreFile="/data/ca/server.jks" keystorePass="123456" />,和<Context docBase="/home/vsftpd/ftp/sv" path="/sv" reloadable="false" />,控制台日志:C:\E\Java\apache-tomcat-10.1.19\bin\catalina.bat run [2025-08-11 06:09:10,871] 工件 sv_server:war exploded: 正在等待服务器连接以启动工件部署… Using CATALINA_BASE: "C:\Users\LEiex\AppData\Local\JetBrains\IntelliJIdea2023.2\tomcat\c595d06f-4382-4fdb-81fe-bfadf36b4d7d" Using CATALINA_HOME: "C:\E\Java\apache-tomcat-10.1.19" Using CATALINA_TMPDIR: "C:\E\Java\apache-tomcat-10.1.19\temp" Using JRE_HOME: "C:\E\Java\jdk17.0.9" Using CLASSPATH: "C:\E\Java\apache-tomcat-10.1.19\bin\bootstrap.jar;C:\E\Java\apache-tomcat-10.1.19\bin\tomcat-juli.jar" Using CATALINA_OPTS: "" > lesta1.0 < 11-Aug-2025 18:09:11.772 警告 [main] org.apache.tomcat.util.digester.SetPropertiesRule.begin Match[Server/Service/Connector]无法将属性[keystoreFile]设置为[/data/ca/server.jks] 11-Aug-2025 18:09:11.774 警告 [main] org.apache.tomcat.util.digester.SetPropertiesRule.begin Match[Server/Service/Connector]无法将属性[keystorePass]设置为[123456] 11-Aug-2025 18:09:11.824 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Server.服务器版本: Apache Tomcat/10.1.19 11-Aug-2025 18:09:11.824 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 服务器构建: Feb 14 2024 19:36:50 UTC 11-Aug-2025 18:09:11.824 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 服务器版本号: 10.1.19.0 11-Aug-2025 18:09:11.825 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 操作系统名称: Windows 11 11-Aug-2025 18:09:11.825 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log OS.版本: 10.0 11-Aug-2025 18:09:11.825 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 架构: amd64 11-Aug-2025 18:09:11.825 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Java 环境变量: C:\E\Java\jdk17.0.9 11-Aug-2025 18:09:11.825 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Java虚拟机版本: 17.0.9+11-LTS-201 11-Aug-2025 18:09:11.825 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log JVM.供应商: Oracle Corporation 11-Aug-2025 18:09:11.825 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE: C:\Users\LEiex\AppData\Local\JetBrains\IntelliJIdea2023.2\tomcat\c595d06f-4382-4fdb-81fe-bfadf36b4d7d 11-Aug-2025 18:09:11.825 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME: C:\E\Java\apache-tomcat-10.1.19 11-Aug-2025 18:09:11.825 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Djava.util.logging.config.file=C:\Users\LEiex\AppData\Local\JetBrains\IntelliJIdea2023.2\tomcat\c595d06f-4382-4fdb-81fe-bfadf36b4d7d\conf\logging.properties 11-Aug-2025 18:09:11.825 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager 11-Aug-2025 18:09:11.826 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dfile.encoding=UTF-8 11-Aug-2025 18:09:11.826 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -javaagent:C:\E\Java\repository\com\lesta\agent\0.0.1-SNAPSHOT\agent-0.0.1-SNAPSHOT.jar=-r 192.168.8.200:9555 11-Aug-2025 18:09:11.826 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Djava.rmi.server.hostname=192.168.1.108 11-Aug-2025 18:09:11.826 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcom.sun.management.jmxremote.rmi.port=1100 11-Aug-2025 18:09:11.826 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcom.sun.management.jmxremote 11-Aug-2025 18:09:11.826 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcom.sun.management.jmxremote.port=1099 11-Aug-2025 18:09:11.826 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcom.sun.management.jmxremote.ssl=false 11-Aug-2025 18:09:11.826 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcom.sun.management.jmxremote.authenticate=false 11-Aug-2025 18:09:11.826 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcom.sun.management.jmxremote= 11-Aug-2025 18:09:11.826 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcom.sun.management.jmxremote.port=1099 11-Aug-2025 18:09:11.826 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcom.sun.management.jmxremote.ssl=false 11-Aug-2025 18:09:11.826 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcom.sun.management.jmxremote.password.file=C:\Users\LEiex\AppData\Local\JetBrains\IntelliJIdea2023.2\tomcat\c595d06f-4382-4fdb-81fe-bfadf36b4d7d\jmxremote.password 11-Aug-2025 18:09:11.826 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcom.sun.management.jmxremote.access.file=C:\Users\LEiex\AppData\Local\JetBrains\IntelliJIdea2023.2\tomcat\c595d06f-4382-4fdb-81fe-bfadf36b4d7d\jmxremote.access 11-Aug-2025 18:09:11.826 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Djdk.tls.ephemeralDHKeySize=2048 11-Aug-2025 18:09:11.826 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources 11-Aug-2025 18:09:11.827 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: --add-opens=java.base/java.lang=ALL-UNNAMED 11-Aug-2025 18:09:11.827 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: --add-opens=java.base/java.io=ALL-UNNAMED 11-Aug-2025 18:09:11.827 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: --add-opens=java.base/java.util=ALL-UNNAMED 11-Aug-2025 18:09:11.827 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: --add-opens=java.base/java.util.concurrent=ALL-UNNAMED 11-Aug-2025 18:09:11.827 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED 11-Aug-2025 18:09:11.827 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcatalina.base=C:\Users\LEiex\AppData\Local\JetBrains\IntelliJIdea2023.2\tomcat\c595d06f-4382-4fdb-81fe-bfadf36b4d7d 11-Aug-2025 18:09:11.827 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcatalina.home=C:\E\Java\apache-tomcat-10.1.19 11-Aug-2025 18:09:11.827 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Djava.io.tmpdir=C:\E\Java\apache-tomcat-10.1.19\temp 11-Aug-2025 18:09:11.829 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent 使用APR版本[1.7.4]加载了基于APR的Apache Tomcat本机库[2.0.7]。 11-Aug-2025 18:09:11.832 信息 [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL成功初始化 [OpenSSL 3.0.13 30 Jan 2024] 11-Aug-2025 18:09:11.913 信息 [main] org.apache.coyote.AbstractProtocol.init 初始化协议处理器 ["http-nio-8084"] 11-Aug-2025 18:09:11.927 信息 [main] org.apache.coyote.AbstractProtocol.init 初始化协议处理器 ["https-openssl-nio-22"] 11-Aug-2025 18:09:11.930 严重 [main] org.apache.catalina.util.LifecycleBase.handleSubClassException 初始化组件[Connector["https-openssl-nio-22"]]失败。 org.apache.catalina.LifecycleException: 协议处理程序初始化失败 at org.apache.catalina.connector.Connector.initInternal(Connector.java:1015) at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:127) at org.apache.catalina.core.StandardService.initInternal(StandardService.java:554) at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:127) at org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:1017) at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:127) at org.apache.catalina.startup.Catalina.load(Catalina.java:708) at org.apache.catalina.startup.Catalina.load(Catalina.java:731) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:302) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:475) Caused by: java.lang.IllegalArgumentException: 没有找到带有hostName[_default_]的SSLHostConfig元素,以匹配连接器[https-openssl-nio-22]的默认SSLHostConfigName at org.apache.tomcat.util.net.AbstractJsseEndpoint.initialiseSsl(AbstractJsseEndpoint.java:75) at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:207) at org.apache.tomcat.util.net.AbstractEndpoint.bindWithCleanup(AbstractEndpoint.java:1282) at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:1295) at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:624) at org.apache.coyote.http11.AbstractHttp11Protocol.init(AbstractHttp11Protocol.java:77) at org.apache.catalina.connector.Connector.initInternal(Connector.java:1013) ... 13 more 11-Aug-2025 18:09:11.932 信息 [main] org.apache.catalina.startup.Catalina.load 服务器在[268]毫秒内初始化 11-Aug-2025 18:09:11.987 信息 [main] org.apache.catalina.core.StandardService.startInternal 正在启动服务[Catalina] 11-Aug-2025 18:09:11.987 信息 [main] org.apache.catalina.core.StandardEngine.startInternal 正在启动 Servlet 引擎:[Apache Tomcat/10.1.19] 11-Aug-2025 18:09:12.046 严重 [main] org.apache.catalina.core.ContainerBase.startInternal 子容器启动失败 java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: 无法启动组件[org.apache.catalina.webresources.StandardRoot@6581dc0a] at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:873) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:845) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1332) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1322) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:866) at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:240) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.StandardService.startInternal(StandardService.java:433) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:921) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.startup.Catalina.start(Catalina.java:757) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:345) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:476) Caused by: org.apache.catalina.LifecycleException: 无法启动组件[org.apache.catalina.webresources.StandardRoot@6581dc0a] at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:419) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:186) at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:4551) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4684) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1332) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1322) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:866) ... 21 more Caused by: java.lang.IllegalArgumentException: 指定的主资源集 [C:\E\Java\apache-tomcat-10.1.19\webapps\home\vsftpd\ftp\sv] 无效 at org.apache.catalina.webresources.StandardRoot.createMainResourceSet(StandardRoot.java:749) at org.apache.catalina.webresources.StandardRoot.startInternal(StandardRoot.java:707) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) ... 30 more 11-Aug-2025 18:09:12.049 严重 [main] org.apache.catalina.core.ContainerBase.startInternal 子容器启动失败 java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: 子容器启动失败 at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:873) at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:240) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.StandardService.startInternal(StandardService.java:433) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:921) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.startup.Catalina.start(Catalina.java:757) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:345) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:476) Caused by: org.apache.catalina.LifecycleException: 子容器启动失败 at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:885) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:845) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1332) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1322) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:866) ... 13 more Caused by: java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: 无法启动组件[org.apache.catalina.webresources.StandardRoot@6581dc0a] at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:873) ... 21 more Caused by: org.apache.catalina.LifecycleException: 无法启动组件[org.apache.catalina.webresources.StandardRoot@6581dc0a] at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:419) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:186) at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:4551) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4684) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1332) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1322) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:866) ... 21 more Caused by: java.lang.IllegalArgumentException: 指定的主资源集 [C:\E\Java\apache-tomcat-10.1.19\webapps\home\vsftpd\ftp\sv] 无效 at org.apache.catalina.webresources.StandardRoot.createMainResourceSet(StandardRoot.java:749) at org.apache.catalina.webresources.StandardRoot.startInternal(StandardRoot.java:707) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) ... 30 more 11-Aug-2025 18:09:12.054 严重 [main] org.apache.catalina.startup.Catalina.start 所必需的服务组件启动失败,所以无法启动Tomcat org.apache.catalina.LifecycleException: 子容器启动失败 at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:885) at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:240) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.StandardService.startInternal(StandardService.java:433) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:921) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.startup.Catalina.start(Catalina.java:757) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:345) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:476) Caused by: java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: 子容器启动失败 at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:873) ... 13 more Caused by: org.apache.catalina.LifecycleException: 子容器启动失败 at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:885) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:845) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1332) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1322) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:866) ... 13 more Caused by: java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: 无法启动组件[org.apache.catalina.webresources.StandardRoot@6581dc0a] at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:873) ... 21 more Caused by: org.apache.catalina.LifecycleException: 无法启动组件[org.apache.catalina.webresources.StandardRoot@6581dc0a] at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:419) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:186) at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:4551) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4684) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1332) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1322) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:866) ... 21 more Caused by: java.lang.IllegalArgumentException: 指定的主资源集 [C:\E\Java\apache-tomcat-10.1.19\webapps\home\vsftpd\ftp\sv] 无效 at org.apache.catalina.webresources.StandardRoot.createMainResourceSet(StandardRoot.java:749) at org.apache.catalina.webresources.StandardRoot.startInternal(StandardRoot.java:707) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) ... 30 more 11-Aug-2025 18:09:12.059 信息 [main] org.apache.coyote.AbstractProtocol.pause 暂停ProtocolHandler["http-nio-8084"] 11-Aug-2025 18:09:12.059 信息 [main] org.apache.coyote.AbstractProtocol.pause 暂停ProtocolHandler["https-openssl-nio-22"] 11-Aug-2025 18:09:12.059 信息 [main] org.apache.catalina.core.StandardService.stopInternal 正在停止服务[Catalina] 11-Aug-2025 18:09:12.063 信息 [main] org.apache.coyote.AbstractProtocol.destroy 正在摧毁协议处理器 ["http-nio-8084"] 11-Aug-2025 18:09:12.064 信息 [main] org.apache.coyote.AbstractProtocol.stop 正在停止ProtocolHandler ["https-openssl-nio-22"] 11-Aug-2025 18:09:12.065 信息 [main] org.apache.coyote.AbstractProtocol.destroy 正在摧毁协议处理器 ["https-openssl-nio-22"] 已与服务器断开连接
最新发布
08-12
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值