问题:

1.springboot 多模块maven 父子工程,B模块依赖了A,  A打包没问题,之后打包B,报错依赖的A中的包找不到,但是idea里导入都是好的,没有报错。

2.解决:BOOT-INF 的坑

 

在多module的环境下,jar包之间相互依赖,这时候打包的时候就会有先后顺序的问题。

在项目开发后打包的时候发现通过原始建立的多module的项目会出现问题;

原始的springboot打包是spring-boot-maven-plugin来完成的;若是A包依赖B包,项目编译跑起来是没任何问题的,但是在mvn打包的时候,会发现被依赖的B包在打成jar的过程中class和resource文件则是在一个名字为BOOT-INF的文件夹之下

我的解决方法

<plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <mainClass>com.mz.party_build.api_server.ApiServerApplication</mainClass>
                    <fork>false</fork>
                    <includeSystemScope>true</includeSystemScope>
                    <!--<classifier>exe</classifier>-->
                    <skip>true</skip>

                </configuration>
            </plugin>

 

在被依赖的A模块pom中build 中加   

<skip>true</skip>

可以看得地方

file ----project structure ---modules--sources

可以看到打的包在boot -info下

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐