下面。
因此,在我的项目中进行了一些重构后,我最终得到了依赖循环SOMEWHERE。我的@Provided
依赖项模块很大,很难理解究竟是什么原因。
这是控制台日志: http://pastebin.com/yxDDEHgz
你可以看到它很大,并没有告诉我什么。有没有办法快速检查哪个依赖注入导致循环?
答案 0 :(得分:4)
您只需要注意以[parameter: …
如果你注意,你会看到你的周期如下:
line 16: [parameter: packagename.map.mapservice.IMapService mapService]
line 13: [parameter: packagename.lib.common.IApplicationVisibility mapVisibility]
line 9: [parameter: packagename.lib.notifications.INotificationSettings notificationSettings]
line 7: [parameter: packagename.map.mapcontent.MarkerClickHandler markerClickHandler]
line 5: [parameter: packagename.map.mapservice.IMapService mapService]
在这里你尝试重新注入IApplicationVisibility
所以循环就在这里:
line 3: [injected field of type: packagename.lib.common.IApplicationVisibility applicationVisibility]
IMapService - > IApplicationVisibility - > INotificationSettings - > MarkerClickHandler - > IMapService(再次IMapService !!!) - > IApplicationVisibility
您在IMapService
中再次注入MarkerClickHandler
,开始周期 !!