有没有办法解决Maven模块中的循环依赖?

时间:2015-07-13 23:09:45

标签: java maven groovy

我的包中有两个模块,称为Module1Module2Module1依赖于Module2,并且更愿意将此单独留下(我不想破坏遗留代码的一部分)。

我需要在Module1中使用Module2中的某个类 - 将其称为Class1。它周围有几个包装器对象,我不在乎它们是否位于Module1Module2。问题是Module1已取决于Module2,因此我无法在Module2上添加Module1的依赖关系。有没有办法访问Class1内的Module2?我怀疑没有,但我不确定如何设计这个功能,没有这个方向的依赖(我一直在考虑接口,工厂和添加第三个模块)。

有关设计的任何提示,以便不会发生这种情况吗?如果重要,这是一个Java / Groovy项目。

1 个答案:

答案 0 :(得分:1)

如果你的项目中存在循环依赖,那基本上是由于设计错误或类的逻辑分组问题。

如果它们在逻辑上/功能上彼此相关,则可以从其中的两个模块创建新项目和合并类。您可以使用InteliJ分析工具查找此类循环依赖类并改进您的设计。