访问servlet报500:
问题引起原因:Tomcat10太新了,Tomcat10将所有的javax包名改成了Jakarta
解决办法:
1.上https://mvnrepository.com/ repository搜索我们需要的最新的dependency,首先是Servlet-api
我们需要的是最新的dependency,所以选中第四个,进去之后直接选择最新的就可以了,下面是dependency代码
<!-- https://mvnrepository.com/artifact/org.apache.tomcat/tomcat-servlet-api -->
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-servlet-api</artifactId>
<version>10.1.0-M8</version>
</dependency>
然后是jsp-api
dependency
<!-- https://mvnrepository.com/artifact/org.apache.tomcat/tomcat-jsp-api -->
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jsp-api</artifactId>
<version>10.1.0-M8</version>
</dependency>
2.将我们的这两段代码放到项目的pom中,替换掉原来的dependency然后更新一下依赖包
3.将我们导入的javax的包手动全部改为jakarta
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
————————————————
版权声明:本文为CSDN博主「小小代码熊」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/APCSZDDXM/article/details/122607014
启动时报错
java: 无法访问jakarta.servlet.ServletException
错误的类文件: /E:/dev/local_repository/org/apache/tomcat/tomcat-servlet-api/10.1.0-M16/tomcat-servlet-api-10.1.0-M16.jar!/jakarta/servlet/ServletException.class
类文件具有错误的版本 55.0, 应为 52.0
请删除该文件或确保该文件位于正确的类路径子目录中。
在IDEA中配置的tomcat版本为tomcat 10.0.23,但是配置servlet-api依赖时,版本version采用的是10.1.0-M17,然后新建servlet项目,并配置到该服务器中,最后运行,运行时控制台报错
而后将版本号更改为10.0.23后,成功运行!!!
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-servlet-api</artifactId>
<version>10.0.23</version>
</dependency>
————————————————
版权声明:本文为CSDN博主「Dragon_best」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Dragon_best/article/details/125560193