☰
Tomcat10的常见报错
2026/10/24 1:40:11 网站建设 项目流程

目录

一、IDEA里乱码

二、至少有一个JAR被扫描用于TLD但尚未包含TLD

三、HTTP404

1、jar包存在问题

2、路径

四、无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri:[http://java.sun.com/jsp/jstl/core]

五、java.util.zip.ZipException: zip file is empty


一、IDEA里乱码

原因是tomcat10默认编码是UTF-8,而JDK18以后的默认编码是GBK

解决方案:打开tomcat的\conf\logging.properties,将UTF-8编码修改为GBK

有很多处,图片仅为举例

二、至少有一个JAR被扫描用于TLD但尚未包含TLD

解决办案:不让tomcat扫描jar就行

在tomcat根目录下的conf文件夹下的catalina.properties(记得备份这个文件)中,找到tomcat.util.scan.StandardJarScanFilter.jarsToSkip

修改为

tomcat.util.scan.StandardJarScanFilter.jarsToSkip=*.jar?

三、HTTP404

这个就比较玄学了

可能的原因:

1、jar包存在问题

2、网址和工件不匹配

1、jar包存在问题

在tomcat10中,一些jar包发生了改变

javax要换成jakarta

jstl和standard要换成jakarta.servlet.jsp.jstl

这些jar包可以去Maven中央仓库下载

中央仓库https://repo.maven.apache.org/maven2/

2、路径

举个例子:

工件部署为/exam6_war_exploded

那么相应的界面路径就应该变为http/localhost::8080//exam6_war_exploded/XXXX

这后面的/XXXX就是在重写的servlet里的@WebServlet("/XXXX)

四、无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri:[http://java.sun.com/jsp/jstl/core]

有时候core会变成fmt

别人说将jstl和standard解压后放到WER-INF下的lib中

但是别忘了现在是tomcat10

所以解决方法应该是

将jstl和standard换成jakarta.servlet.jsp.jstl

五、java.util.zip.ZipException: zip file is empty

这个是我在解压了jstl和standard后出现的,大致意思是这两个变成了空的压缩包,重新添加依赖就可以了

以后若还碰到其它的,再进行更新

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询