SpringBoot项目如何打war包问题详解

1、pom.xml配置修改

jar
//修改为
war

2、pom文件添加如些依赖



	javax.servlet
	javax.servlet-api
	provided

3、排除springboot内置的tomcat干扰



	org.springframework.boot
	spring-boot-starter-web
	
		
			org.springframework.boot
			spring-boot-starter-tomcat
		
	

4、改造启动类

如果是war包发布,需要增加SpringBootServletInitializer子类,并重写其configure方法,
或者将main函数所在的类继承SpringBootServletInitializer,并重写configure方法
当时打包为war时上传到tomcat服务器中访问项目始终报404错就是忽略了这个步骤!!!

改造之前:

@SpringBootApplication
public class MainApp {
	public static void main(String[] args) {
		SpringApplication.run(MainApp.class,args);
	}
}

改造之后:

@SpringBootApplication
public class SpringBootMytestApplication extends SpringBootServletInitializer {
	public static void main(String[] args) {
		SpringApplication.run(SpringBootMytestApplication.class, args);
	}
	
	@Override
	protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
		// 注意这里要指向原先用main方法执行的Application启动类
		return builder.sources(SpringBootMytestApplication.class);
	}
}

这种改造方式也是官方比较推荐的方法

5、pom文件中不要忘了maven编译插件


	
		
			org.springframework.boot
			spring-boot-maven-plugin
		
	

打包操作:

SpringBoot项目如何打war包问题详解_第1张图片
SpringBoot项目如何打war包问题详解_第2张图片

war包打包成功。

如果想用idea中的外置tomcat验证war包是否正常,方法如下:

在这里插入图片描述

SpringBoot项目如何打war包问题详解_第3张图片
SpringBoot项目如何打war包问题详解_第4张图片

SpringBoot项目如何打war包问题详解_第5张图片

如果不改成“/” 访问时路径前要加上此路径内容,如下图。

在这里插入图片描述
SpringBoot项目如何打war包问题详解_第6张图片

验证成功

到此这篇关于SpringBoot项目如何打war包问题详解的文章就介绍到这了,更多相关SpringBoot项目打war包内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(SpringBoot项目如何打war包问题详解)