运行JSP文件时Eclipse停止响应 故障原因排查求助
问题排查解决方案
适配Tomcat 10版本的包规范
Tomcat 10.0属于Jakarta EE 9版本实现,原有Java EE体系的javax.*包名全部迁移为jakarta.*,如果你创建动态Web项目时选择的Servlet版本低于5.0,项目默认依赖的javax.servlet系列API会和Tomcat 10产生类加载冲突,直接引发服务器启动异常甚至Eclipse无响应。
解决方案可二选一:降级Tomcat到9.x版本(兼容javax.*包规范),或创建项目时选择Servlet 5.0及以上版本,全量使用jakarta.*前缀的API。修正JSP代码逻辑
你当前使用的脚本标签<% %>仅执行代码逻辑不会输出返回值,属于代码错误,虽不会直接导致卡死,但会出现页面无计算结果的问题,需要改为输出脚本标签:
this is the sum of 5 and 3 <%= com.testing.SumOfNumbers.addTwoNumbers(3,5) %>
检查JDK版本匹配
Tomcat 10.0最低要求JDK 11作为运行环境,如果Eclipse中配置的Tomcat运行时使用的是JDK 8及更低版本,会触发兼容性错误导致卡死。你可以在Eclipse「服务器」视图双击对应的Tomcat实例,检查运行时JDK版本是否符合要求。清理缓存重试
- 右键Tomcat实例选择「Clean」清理服务器工作目录缓存
- 点击顶部菜单栏「Project」->「Clean」清理项目编译产物
- 重启Eclipse后重新运行项目
调整Eclipse内存配置
如果Eclipse分配的堆内存过小,运行Web项目时容易触发内存不足导致无响应,你可以打开Eclipse安装目录下的eclipse.ini文件,修改以下参数提升内存上限:
-Xms512m -Xmx2048m -XX:MaxPermSize=1024m
修改后保存重启Eclipse即可生效。
内容的提问来源于stack exchange,提问作者Doddi girish
相关产品推荐
相关产品推荐

