当前位置: 首页 > article >正文

spring-boot-maven-plugin插件 —— 打成普通jar

如果是 Spring Boot 项目结构是通过父子工程来管理,就可能有多个层级结构,工程之前存在依赖关系,如果所依赖的包被打包 spring boot 的可执行 jar,则该工程中启动时就会报找不到类的异常。

此时需要将所依赖的包打包普通 jar 包,就不要执行 spring-boot.repackage 操作。如下操作:

mvn clean package -Dspring-boot.repackage.skip=true

或在 pom.xml 文件中配置将是否打成执行 jar 包配置为参数项,默认为 false(即插件默认的打可执行 jar),外部执行 mvn package 传入该参数值。如下示例:

<project>
    <properties>
        <provider.package>false</provider.package>
    </properties>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <skip>${provider.package}</skip>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>

执行 mvn 命令,并传入 provider.package 参数

mvn clean package  file-server -Dprovider.package=true

上面配置等同于:

<project>
    <properties>
        <provider.package>false</provider.package>
    </properties>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                        <configuration>
                            <skip>${provider.package}</skip>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>


http://www.kler.cn/a/132085.html

相关文章:

  • <蓝桥杯软件赛>零基础备赛20周--第6周--数组和队列
  • 4.4 Windows驱动开发:内核监控进程与线程创建
  • 【计算机网络学习之路】网络基础1
  • zookeperkafka学习
  • Spring过滤器和拦截器的区别
  • 金融数字化是什么?如何进行金融数字化转型?
  • 【docker】Docker网络与iptables
  • 轻地图+数据闭环加速落地,觉非科技获多家头部车企定点
  • 【51单片机系列】C51基础
  • redis安装(Windows和linux)
  • CentOS Linux release 7.9.2009 (Core)中安装配置Tomcat
  • Redis实战篇(1)
  • Spring Boot使用EhCache完成一个缓存集群
  • ElementUI及ElementUI Plus Axure RP高保真交互元件库及模板库
  • 二十九、W5100S/W5500+RP2040树莓派Pico<Web socket Server>
  • 第四代智能井盖传感器,万宾科技助力城市安全
  • Java,集合框架,关于Collection接口
  • 【开源】基于JAVA的高校宿舍调配管理系统
  • 【C++11】多线程库 {thread线程库,mutex互斥锁库,condition_variable条件变量库,atomic原子操作库}
  • U盘如何自定义图标?