前几天敲代码的时候我发现了一个问题,我在faced模块mapper接口去调用service模块中一个实体类的时候系统警告我会引入循环依赖关系,我想着没啥就加上了(图1)
代码写好后我就启动项目但是爆了这么一个错(图2)
我就纳闷了,咋会出现这个问题嘞?我寻思模块之间添加依赖不是应该没啥问题吗,我就去网上搜了一圈,看了很多文章但是都没有出现我这种问题,没办法我只能先去pom文件里看了一眼我到底添加的依赖到底是个啥(图3)
这不是没问题吗?啥情况啊?我试着用网上那些解决方法去解决但是都不行,就很离谱,为啥这种bug都让我遇到了捏?出去转了一圈然后又仔细的看了看提交框我修改过的代码我发现pom文件里还有一个faced模块的依赖(图4)
哎?这是咋回事?明明pom文件里已经有对faced模块的依赖了啊,为啥这上面还有一个呢?我点开了git追溯,发现图3的faced依赖是别人添加的而图4的这个是我添加的,不对啊,那service和faced这两模块已经有依赖了为啥我调用实体类的时候还要让我再添加一个呢?我把图4的这个依赖删掉然后发现faced层mapper接口爆红了,去alt+enter的时候果然又出现了循环依赖这个警告,这个问题到最后我也没弄明白到底咋回事。
临时解决方法就是在faced模块添加了一个和service模块里面那个实体类一样的实体类,然后用这个实体类,后面等我有时间再去深究这个模块之间循环依赖的问题。。。