Весенние циклические ссылки при работе в Mac OS - PullRequest
0 голосов
/ 06 ноября 2018

Я работал над приложением Java с версией Spring 4.0.7 на компьютере с Windows, который работал хорошо в течение последних нескольких лет. Недавно у нас было требование к разработчикам использовать MacBook Pro для разработки, и у нас сразу же возникли проблемы с циклическими ссылками в нашей конфигурации Spring при запуске приложения (сборка с Maven подходит). Кто-нибудь знает причину, по которой запуск приложений Spring на компьютерах с Windows будет отличаться от компьютеров с Mac OS?

Java-версия, которую мы используем: 1.7.0.80, Подробности исключения:

Caused by: org.springframework.beans.factory.BeanCurrentlyInCreationException: Error creating bean with name 'reactor': Requested bean is currently in creation: Is there an unresolvable circular reference?
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.beforeSingletonCreation(DefaultSingletonBeanRegistry.java:334)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:298)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:198)
at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:446)
at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:420)
at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:545)
at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:155)
at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:87)
at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:305)
... 127 more

1 Ответ

0 голосов
/ 06 ноября 2018

Сначала проверьте это: http://forum.spring.io/forum/spring-projects/container/115998-circular-dependency-identification-inconsistent

По-видимому, в некоторых сценариях базовый API-интерфейс ОС для перечисления файлов возвращает другой порядок.

Однако вы можете попытаться решить проблему, изменив порядок сканирования пакетов в аннотации @ComponentScan() или используя аннотацию @dependsOn("reactor") в классе, который вызывает исключение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...