当前位置: 代码迷 >> 综合 >> 记一次Jar冲突解决
  详细解决方案

记一次Jar冲突解决

热度:74   发布时间:2023-10-21 11:43:26.0

背景:

一个老的Boot项目引入微服务,所以打算使用feign

1.微服务的feign接口打包

2.引入POM

<dependency><groupId>com.xxx</groupId><artifactId>xxx-api</artifactId><version>1.0.22</version><classifier>interface</classifier>
</dependency>

3.启动分析:

1).启动空指针

2).项目启动后,访问无日志,无响应(除第一次会有几行日志)

 

原因:

jenkins在部署项目时,把feign接口包里面的pom也扫到了,所以把feign接口所在的项目引用的jar也打进去了

导致项目会多出很多jar,启动报错。

解决:

feign接口所在的项目引用jar每个都加上

<optional>true</optional>

或者:

<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-jar-plugin</artifactId><executions><execution><id>interface</id><goals><goal>jar</goal></goals><phase>package</phase><configuration><classifier>interface</classifier><includes><include>**/com/xxx/**/feign/**</include></includes><finalName>${project.artifactId}-${project.version}</finalName><archive><addMavenDescriptor>false</addMavenDescriptor></archive></configuration></execution></executions>
</plugin>
  相关解决方案