专注Java教育14年 全国咨询/投诉热线:444-1124-454
星辉LOGO图
始于2009,口口相传的Java黄埔军校
首页 hot资讯 SpringBoot项目打包说明

SpringBoot项目打包说明

更新时间:2021-12-29 11:13:43 来源:星辉 浏览1511次

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包到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提供的。

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>