使用 IDEA 解决 Maven 项目循环依赖
  TEZNKK3IfmPf 2023年11月13日 15 0

正常情况下,循环依赖是很少见的,当很多个项目互相引用的时候,就可能出现循环依赖,一般根据错误信息也能解决循环依赖,这篇就是讲如何使用 IDEA 轻松的解决循环依赖问题。

打开项目依赖图

在可能出现循环依赖的项目上右键打开【Show Diagram…】,如下图:

使用 IDEA 解决 Maven 项目循环依赖

两个项目依赖图的例子

一个简单的项目依赖图:

使用 IDEA 解决 Maven 项目循环依赖

一个复杂的项目依赖图:

使用 IDEA 解决 Maven 项目循环依赖

项目依赖图看着是不是很直观?

项目不一定存在循环依赖,如果存在循环依赖,就会在上面的图中出现【红色】的线。

观察项目中的红线

使用 IDEA 解决 Maven 项目循环依赖

局部放大后:

使用 IDEA 解决 Maven 项目循环依赖

正常情况,两个项目之间肯定只有一条线,如果出现这种来回两条线,肯定就是互相依赖了。这种依赖可能是两个项目直接依赖,也可能是通过其他项目导致的间接依赖。

这个图中的 api 项目不应该引用 service 项目,因此我们打开 api 项目。

查看有问题项目的 Maven 依赖树图

在 api 项目的 pom.xml 内容中右键可以打开 Maven 依赖树图,部分依赖图如下:

使用 IDEA 解决 Maven 项目循环依赖

通过这个图,很明显的可以看到 api 项目通过 webservice 项目引入了 service 项目,因此在 pom 中找到 webservice 项目,添加排除项,例如:

<dependency>
<groupId>com.xxx</groupId>
<artifactId>xxx-webservice-service</artifactId>
<version>x.x.x</version>
<exclusions>
<exclusion>
<groupId>com.xxx</groupId>
<artifactId>xxx-sampinput-service</artifactId>
</exclusion>
</exclusions>
</denpendency>

排除后,再查看【项目依赖图】,就会发现循环依赖已经消除了。

通过 IDEA 直观的依赖图,可以很方便的解决循环依赖的问题。

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月13日 0

暂无评论

推荐阅读
  TEZNKK3IfmPf   2024年03月29日   136   0   0 IDEAgt
  TEZNKK3IfmPf   2024年03月29日   120   0   0 maven
TEZNKK3IfmPf