spring boot项目部署到tomcat报404
这真的是一个天坑,太坑了。 在网上找了很多解决方案,像众位网友所说的那样,我去掉springboot内嵌的tomcat,再依赖servlet-api,修改启动类继承SpringBootServletInitializer,打成war放入tomcat中 结果还是404,我心态炸了。。。
- pom.xml
去掉内嵌tomcat
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope><!-- 打成war的时候打开注释,本地开发用内嵌tomcat时加上注释 --> </dependency>
打成war
<packaging>war</packaging>
- 启动类
@SpringBootApplication @ComponentScan(basePackages = "com.yzker") public class Application extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(Application.class); } public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
mvn clean package 将war包放到tomcat下试试吧,如果报404,参考下面 访问地址:localhost:{tomcat端口号} /重命名的war包名/xxxx
我的就是死在了重命名的包名上面,潜意识的以为包名是我新建的项目名。。。
上一篇:
通过多线程提高代码的执行效率例子
下一篇:
Nginx深度剖析,真是被大牛讲透了