我的包中有两个模块,称为Module1
和Module2
。 Module1
依赖于Module2
,并且更愿意将此单独留下(我不想破坏遗留代码的一部分)。
我需要在Module1
中使用Module2
中的某个类 - 将其称为Class1
。它周围有几个包装器对象,我不在乎它们是否位于Module1
或Module2
。问题是Module1
已取决于Module2
,因此我无法在Module2
上添加Module1
的依赖关系。有没有办法访问Class1
内的Module2
?我怀疑没有,但我不确定如何设计这个功能,没有这个方向的依赖(我一直在考虑接口,工厂和添加第三个模块)。
有关设计的任何提示,以便不会发生这种情况吗?如果重要,这是一个Java / Groovy项目。
答案 0 :(得分:1)
如果你的项目中存在循环依赖,那基本上是由于设计错误或类的逻辑分组问题。
如果它们在逻辑上/功能上彼此相关,则可以从其中的两个模块创建新项目和合并类。您可以使用InteliJ分析工具查找此类循环依赖类并改进您的设计。