我有2个项目和
+ proj1 has
+ com.myproj1 has
+ Runner.class
+ Logger.class
+ proj2 has
+ com.myproj2 has
+ Test.class
+ Fact.class
module com.myproj1 {
requires module com.myproj2;
exports com.myproj1
}
module com.myproj2 {
exports com.myproj2;
requires module com.myproj1;// the problem is "Cycle exists in module
dependencies, Module... "
}
我在com.myproj1 Runner.class中使用来自com.myproj2的Test.class它是好的,直到这里但是当我尝试使用 它在Fact.class中的Logger.class给了我问题"循环存在于模块依赖,Module"中。我知道模块可以防止循环依赖。但是之后 这种情况的解决方案是什么>
答案 0 :(得分:0)
由于您构建模块的方式,这是一个错误的依赖循环。
将Logger
移动到自己的模块中,然后将其导入其他两个项目中。这是一般解决方案:分解人为导致循环的依赖性。
如果你有一个真正的循环依赖,你需要重新架构整个系统以防止它,但你没有这种情况。