1.多模块依赖有jar包有父项目打包还是失败原因之一
例如项目的模块结构是这样的
- common
- customer
- service
customer依赖common包,service也依赖common包。
在maven中能成功打包common包,但在父模块中打包却失败了。但依赖能能成功找到common和本地库中也生成了jar包。
解决方案
1.查看生成的jar包内容,先将jar包放进项目里,然后查看common包的文件结构,打包成功的jar包都是只有meta-inf这个文件夹的,打包有问题的common包中的文件结构一般都会含有BOOT-INF这个文件夹。
2.如果是1的情况下要修改父模块的pom的maven打包插件配置,加入<configuration>标签,修改完后重新reimport pom,然后父模块重新打包,一般情况下,项目就打包成功了。具体情况还是要看maven打包插件是放到父模块下还是在项目启动的模块下
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>