Компонент сканирования скан запах? При выполнении модульных тестов я получаю сообщение об ошибке при создании bean-компонента, не отвечающего требованиям bean-компонента типа, даже если bean-компонент существует в списке bean-компонентов Spring - PullRequest
0 голосов
/ 07 октября 2019

У меня есть класс конфигурации в пакете конфигурации, который выглядит следующим образом:

package com.x.y.appName.config

@ComponentScan(basePackageClasses = { Application.class })
@Configuration
public class AppConfig {

Мой проект терпит неудачу при сборке в SomeClass, которая использует компонент AppConfig, говоря:

Error creating bean with name 'someClass': Unsatisfied dependency 
expressed through field 'appConfig'; nested exception is 
org.springframework.beans.factory.NoSuchBeanDefinitionException: No 
qualifying bean of type

Но когда я вывожу на печать стандартный список bean-компонентов, о которых знает Spring, он перечисляет там appConfig

SomeClass также находится в пакете конфигурации и выглядит так:

package com.x.y.appName.config;

@Configuration
public class SomeClass implements WebMvcConfigurer {

@Autowired
AppConfig appConfig;

но если я добавлю это в SomeClass, он будет работать нормально, и все тесты пройдут:

@ComponentScan("com.x.y.appName.config")

в прошлом я никогда не нуждался в ComponentScan в том же пакете, что и другой компонент, также объявленный в

еще раз, чтобы уточнить, я могу нормально запустить приложение, но эта весенняя ошибка выдает во время сборки или тестирования. мне нужно добавить что-то в модульные тесты? У меня нет модульных тестов для любого из вышеперечисленных классов, поскольку они были бы слишком легкомысленными. Так что же может происходить? Нужно ли где-нибудь комментировать другие юнит-тесты?

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