Spring Boot Maven 打包插件 maven-compiler-plugin 与 maven-jar-plugin 的区别

Maven Spring Boot About 1,532 words

maven-compiler-plugin

用于编译 Java 源代码。配置和控制编译过程,例如指定Java编译器的版本、设置编译选项、排除或包括特定文件等。

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.1</version>
            <configuration>
                <source>17</source>
                <target>17</target>
                <excludes>
                    <exclude>**/SomeExcludedFile1.java</exclude>
                    <exclude>**/SomeExcludedFile2.java</exclude>
                </excludes>
            </configuration>
        </plugin>
    </plugins>
</build>

maven-jar-plugin

用于创建jar文件。将编译好的代码、资源文件和依赖项打包成一个jar文件。可以通过配置插件来指定需要排除或包括的文件和目录。

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>3.2.0</version>
            <configuration>
                <excludes>
                    <exclude>**/ExcludedFile.class</exclude>
                    <exclude>**/static/</exclude>
                </excludes>
            </configuration>
        </plugin>
    </plugins>
</build>

spring-boot-maven-plugin

在一个Spring Boot项目中,maven-compiler-plugin先处理代码编译,然后maven-jar-plugin处理打包,最后 spring-boot-maven-pluginrepackage目标中将生成的jar文件重新打包成可执行的Spring Boot jar文件。

spring-boot-maven-pluginmaven-compiler-pluginmaven-jar-plugin是协同工作的关系,而不是直接封装关系。

总结

  • maven-compiler-plugin:专注于编译Java源代码,包括设置编译器版本以及编译选项。
  • maven-jar-plugin负责将编译后的代码和资源文件打包成jar文件,可以定制打包规则以包含或排除特定文件和目录。
Views: 183 · Posted: 2025-01-02

————        END        ————

Give me a Star, Thanks:)

https://github.com/fendoudebb/LiteNote

扫描下方二维码关注公众号和小程序↓↓↓

扫描下方二维码关注公众号和小程序↓↓↓


Today On History
Browsing Refresh