我爱Java系列之---SpringBoot打成war包部署
Posted hujunwei
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我爱Java系列之---SpringBoot打成war包部署相关的知识,希望对你有一定的参考价值。
1.把下面这句话放入pom.xml中,放上边
<packaging>war</packaging>
2.war包要部署到tomcat服务器中,而springboot中自带了一个,这时候要去掉。
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency>
3. 注册启动类
第一种方式:创建 ServletInitializer.java,继承 SpringBootServletInitializer ,覆盖 confifigure(),把启动类 Application 注
册进去。外部 Web 应用服务器构建 Web Application Context 的时候,会把启动类添加进去。
public class ServletInitializer extends SpringBootServletInitializer
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder)
return builder.sources(DemoApplication.class);
第二种方式:直接改写启动类
@SpringBootApplication public class Application extends SpringBootServletInitializer public static void main(String[] args) SpringApplication.run(Application.class, args); @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) return builder.sources(Application.class);
4.在pom.xml文件中最下面加上这个maven插件,注意不能直接用idea中的maven工具打包,必须用这个。
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build>
5.清理项目,再打包,把打好的war包复制到tomcat下的webapp目录下,回到bin目录,cmd启动命令窗口,输入startup.bat。启动后就可以在浏览器端访问了。记得加上包名才可以访问。例:http://localhost:8080/day01_springboot_demo01-1.0-SNAPSHOT/hello
# 或者执行下面的命令 排除测试代码后进行打包 可以在idea中右边的maven命令栏的package命令上配置上下面这句话,也可以直接clean,package clean package -Dmaven.test.skip=true
以上是关于我爱Java系列之---SpringBoot打成war包部署的主要内容,如果未能解决你的问题,请参考以下文章
我爱Java系列之---SpringBoot中常用的注解和两种注入方式
我爱java系列---idea把实体类打成jar包并上传到私服最详细的教程
我爱java系列---springboot项目集成zookeeper作为注册中心