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深度剖析,真是被大牛讲透了
