spring-boot-maven-plugin可以将Spring Boot应用打成带依赖的jar包。即该包中不仅包含应用自身的代码,还包含了pom.xml中配置的依赖
修改pom.xml
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
打包
$ mvn compile
$ mvn package spring-boot:repackage
这样生成后的jar包就包含了项目依赖,生成的jar包位于项目的target文件夹下。
比较两者目录的异同
假设项目结构是
|-src
|- main
|- java
|- cn
|- resources
|- application.yml
|- pom.xml
mv package | mvn package spring-boot:repackage | |
---|---|---|
jar包大小 | 很小,一般就几十到几百KB | 偏大,一般都能达到十几MB,取决于项目依赖的多少 |
目录 | -cn 文件夹内是编译后的class文件 -META-INF 文件夹内包含项目pom.xml文件 -application.yml 项目配置文件 | -BOOT-INF 内部包含编译后的class文件、项目配置文件项目相关的依赖 -META-INF 内部包含pom.xml文件l |