Apache Tomcat 10.1 无法删除临时文件

问题描述 投票:0回答:1

我们刚刚将 Tomcat 从 9.0 升级到 10.1,将 Java 从 8 升级到 11。一切都运行良好,只是现在临时文件堆积在

Apache Software Foundation\Tomcat 10.1\work\Catalina\localhost\root
中。这会导致 Java 堆空间问题后出现 502 错误。我们看到这样的错误..

07-Feb-2023 23:33:11.414 SEVERE [http-nio-81-exec-3] org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun Error running socket processor
    java.io.UncheckedIOException: Cannot delete C:\Program Files\Apache Software Foundation\Tomcat 10.1\work\Catalina\localhost\root\upload_ac88107d_733f_4b9d_a3a3_9274a46f92e3_00000509.tmp
        at org.apache.tomcat.util.http.fileupload.disk.DiskFileItem.delete(DiskFileItem.java:429)
        at org.apache.catalina.core.ApplicationPart.delete(ApplicationPart.java:54)
        at org.apache.catalina.connector.Request.recycle(Request.java:451)
        at org.apache.catalina.connector.CoyoteAdapter.log(CoyoteAdapter.java:512)
        at org.apache.catalina.connector.CoyoteAdapter.checkRecycled(CoyoteAdapter.java:536)
        at org.apache.coyote.http11.Http11Processor.recycle(Http11Processor.java:1440)
        at org.apache.coyote.AbstractProtocol$ConnectionHandler.release(AbstractProtocol.java:1052)
        at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:1024)
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1734)
        at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
        at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
        at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        at java.base/java.lang.Thread.run(Thread.java:834)
    Caused by: java.io.IOException: Cannot delete C:\Program Files\Apache Software Foundation\Tomcat 10.1\work\Catalina\localhost\root\upload_ac88107d_733f_4b9d_a3a3_9274a46f92e3_00000509.tmp
        ... 14 more

有什么想法可能是什么问题吗?

java api tomcat iis catalina
1个回答
0
投票

有时没有管理员权限我们无法删除C:盘的文件, 也许这些解决方案会对您有所帮助:

  1. 使用管理权限运行您的 Java 应用程序。 (使用cmd)

  2. 如果仍然遇到问题,请检查文件权限。确保 Java 进程具有删除文件所需的权限。

© www.soinside.com 2019 - 2024. All rights reserved.