Tomcat 10 部署 Springboot War 404 解决方案

2年前 (2022) 程序员胖胖胖虎阿
315 0 0

测试环境:

开发工具:IDEA

Server.服务器版本: Apache Tomcat/10.0.18
服务器构建:        Mar 9 2022 14:30:15 UTC
服务器版本号:      10.0.18.0
操作系统名称:      Windows 10
OS.版本:           10.0
架构:              amd64
Java虚拟机版本:    17.0.1+12-LTS-39


问题描述

使用IDEA 编译成WAR文件,直接把WAR粘贴至 ${Tomcat HOME}/webapps/, 启动startup.bat
启动后访问提示404,日志里面也没有输出 《Spring》,仅有一条不太相关的错误,但这个错误也不会影响Springboot 启动啊,测试N种方法一直无果,期间换了 STS 开发工具重新打包测试依然不行,最后更换一下Tomcat 8.5版本,可以正常起动,那问题就出在 Tomcat 10 版本上。

org.apache.jasper.servlet.TldScanner.scanJars 至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。 

于是,GG一番。 可能是因为Oracle 将 Java EE 的权利转让给 Eclipse 基金会。

Java EE 更名为 Jakarta EE (Eclipse 不能使用javax作为包前缀)

Servlet 5.0 API   : javax.servlet  替换为 jakarta.servlet.

Server Pages 3.0 : javax.servlet.jsp 替换为 jakarta.servlet.jsp.

Expression Language 4.0 : javax.el 替换为 jakarta.el.

WebSocket 2.0: javax.websocket 替换为 jakarta.websocket.

有可能是因为包名更改,所以部署时需要迁移把,具体原因不在深究已经有10年没碰过java了,最近也是一时兴起,学习一下java springboot开发


解决方案:

只需要在${Tomcat 安装目录下}新建 webapps-javaee,把打包好的WAR文件放在此处,启动tomcat即可。tomcat自动将Java EE 迁移至 Jakarta EE

Apache Tomcat 10 Configuration Reference (10.0.18) - The Host Container

Tomcat 10 部署 Springboot War 404 解决方案

 

版权声明:程序员胖胖胖虎阿 发表于 2022年10月21日 上午4:00。
转载请注明:Tomcat 10 部署 Springboot War 404 解决方案 | 胖虎的工具箱-编程导航

相关文章

暂无评论

暂无评论...