zoukankan      html  css  js  c++  java
  • SpringBoot打包部署简单说明

    SpringBoot项目打包部署

    1. jar包部署

    • 添加一个插件

      <!-- 打包插件 -->
      <build>
          <plugins>
              <plugin>
                  <groupId>org.springframework.boot</groupId>
                  <artifactId>spring-boot-maven-plugin</artifactId>
              </plugin>
          </plugins>
      </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

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

      @SpringBootApplication
      public class MyApplication extends SpringBootServletInitializer {
      
          public static void main(String[] args) {
              SpringApplication.run(MyApplication.class, args);
          }
      
          @Override
          protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
              return builder.sources(MyApplication.class);
          }
      }
      
    • 打包(war)

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

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

    注意第三方jar的情况

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

    <build>
            <!--设置maven-war-plugins插件,否则外部依赖无法打进war包 -->
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-war-plugin</artifactId>
                    <configuration>
                        <webResources>
                            <resource>
                                <directory>src/main/resources/jar/</directory>
                                <targetPath>WEB-INF/lib</targetPath>
                                <filtering>false</filtering>
                                <includes>
                                    <include>**/*.jar</include>
                                </includes>
                            </resource>
                        </webResources>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    

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

  • 相关阅读:
    最详细易懂的CRC-16校验原理(附源程序)(转)
    深入理解Java的接口和抽象类(转)
    同步、更新、下载Android Source & SDK from 国内镜像站(转载)
    django字段查询参数及聚合函数
    django不返回QuerySets的API
    django查询集API
    django查询操作
    django用包来组织模型
    django模型的继承
    django模型的元数据Meta
  • 原文地址:https://www.cnblogs.com/baijinqiang/p/11405363.html
Copyright © 2011-2022 走看看