SpringBoot打包部署简单说明

SpringBoot项目打包部署

1. jar包部署

  • 添加一个插件

    1<!-- 打包插件 --> 2<build> 3 <plugins> 4 <plugin> 5 <groupId>org.springframework.boot</groupId> 6 <artifactId>spring-boot-maven-plugin</artifactId> 7 </plugin> 8 </plugins> 9</build>
  • 这种使用SpringBoot内嵌的Tomcat进行部署。SpringBoot在不指定打包的时候默认jar包形式

    <packaging>jar</packaging>
    
  • 使用命令启动部署

    java -jar xxx.jar
    

注意存在第三方jar的情况

2. war包部署

  • 添加插件如上

  • 打包方式修改为war

    <packaging>war</packaging>
    
  • 添加tomcat插件,spring boot本身有一个内嵌的tomcat,如果不做其他配置直接打包,就会生成一个jar包。 所以我们引入外部tomcat

    1<!-- 外部 tomcat --> 2<dependency> 3 <groupId>org.springframework.boot</groupId> 4 <artifactId>spring-boot-starter-tomcat</artifactId> 5</dependency>
  • 在启动类中做如下配置,继承SpringBootServletInitializer,重写configure方法

    1@SpringBootApplication 2public class MyApplication extends SpringBootServletInitializer { 3 4 public static void main(String[] args) { 5 SpringApplication.run(MyApplication.class, args); 6 } 7 8 @Override 9 protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { 10 return builder.sources(MyApplication.class); 11 } 12}
  • 打包(war)

    • 切换到项目所在路径,使用命令 mvn clean package
    • 使用IDE工具,例如IDEA自带打包工具war-package
  • 部署,拷贝war包到tomcat的webapps路径下,启动tomcat

注意:这种war包方式端口号使用tomcat的,项目名使用war包的名字,对于application.yml配置文件里指定的端口号和项目名会覆盖掉。

注意第三方jar的情况

使用maven的打包插件,打包方式还是如上。

1<build> 2 <!--设置maven-war-plugins插件,否则外部依赖无法打进war包 --> 3 <plugins> 4 <plugin> 5 <groupId>org.apache.maven.plugins</groupId> 6 <artifactId>maven-war-plugin</artifactId> 7 <configuration> 8 <webResources> 9 <resource> 10 <directory>src/main/resources/jar/</directory> 11 <targetPath>WEB-INF/lib</targetPath> 12 <filtering>false</filtering> 13 <includes> 14 <include>**/*.jar</include> 15 </includes> 16 </resource> 17 </webResources> 18 </configuration> 19 </plugin> 20 </plugins> 21 </build>

注意:打包插件不能再用springboot提供的

点赞
收藏

评论区

加载中...

相关推荐

springboot使用之快捷打包部署

本篇关键知识点:Maven的assembly插件实现自定义打包部署(包含依赖jar包) 目前springboot项目的几种常见的部署方式。1\.使用docker容器去部署,将springboot的应用构建成一个dockerimage,然后通过容器去启动镜像,这种方式在

springboot项目启动,停止,重启

参考博客https://www.cnblogs.com/chy/p/10460061.html打包插件,可以指定启动类<build<plugins<plugin<groupIdorg.springframework.boot</groupId<artifact

SpringBoot 配置文件与依赖库分离打包配置

一、应用场景一般情况下我们对springboot应用打包时使用springboot的maven插件springbootmavenplugin的maven进行打包,打包完成得到一个fatjar,fatjar的优点是可以直接运行,缺点是体积太大,不利于传输,springboot应用打出来的fatjar体积少则几十M,多则上百M,在往服务器部署传

SpringBoot2.0 基础案例(17):自定义启动页,项目打包和指定运行环境

本文源码GitHub地址:知了一笑https://github.com/cicadasmile/springbootbase一、打包简介springboot的打包方式有很多种。可以打war包,可以打jar包,可以使用jekins进行打包部署的。不推荐用war包,SpringBoot适合前后端分离

SpringBoot2.0 基础案例(17):自定义启动页,项目打包和指定运行环境

本文源码GitHub地址:知了一笑https://github.com/cicadasmile/springbootbase一、打包简介springboot的打包方式有很多种。可以打war包,可以打jar包,可以使用jekins进行打包部署的。不推荐用war包,SpringBoot适合前后端分离

SpringBoot打包部署简单说明

SpringBoot项目打包部署1\.jar包部署添加一个插件<!打包插件<build<plugins<plugin<groupId