Как обращаться с именем "Отклонено" bean - нет URL-адресов, идентифицированных 'в Spring?
У меня есть приложение загрузки Spring, и во время запуска я получаю следующие сообщения:
7701 [main] DEBUG o.s.w.s.h.BeanNameUrlHandlerMapping - Rejected bean name 'org.springframework.context.annotation.internalConfigurationAnnotationProcessor': no URL paths identified
7701 [main] DEBUG o.s.w.s.h.BeanNameUrlHandlerMapping - Rejected bean name 'org.springframework.context.annotation.internalAutowiredAnnotationProcessor': no URL paths identified
7701 [main] DEBUG o.s.w.s.h.BeanNameUrlHandlerMapping - Rejected bean name 'org.springframework.context.annotation.internalRequiredAnnotationProcessor': no URL paths identified
7701 [main] DEBUG o.s.w.s.h.BeanNameUrlHandlerMapping - Rejected bean name 'org.springframework.context.annotation.internalCommonAnnotationProcessor': no URL paths identified
7701 [main] DEBUG o.s.w.s.h.BeanNameUrlHandlerMapping - Rejected bean name 'org.springframework.context.annotation.internalPersistenceAnnotationProcessor': no URL paths identified
7701 [main] DEBUG o.s.w.s.h.BeanNameUrlHandlerMapping - Rejected bean name 'application': no URL paths identified
7701 [main] DEBUG o.s.w.s.h.BeanNameUrlHandlerMapping - Rejected bean name 'org.springframework.context.annotation.ConfigurationClassPostProcessor.importAwareProcessor': no URL paths identified
7701 [main] DEBUG o.s.w.s.h.BeanNameUrlHandlerMapping - Rejected bean name 'org.springframework.context.annotation.ConfigurationClassPostProcessor.enhancedConfigurationProcessor': no URL paths identified
7702 [main] DEBUG o.s.w.s.h.BeanNameUrlHandlerMapping - Rejected bean name 'bookingController': no URL paths identified
Это происходит для каждого @Autowired
, который я использовал в своем приложении.
Единственная конфигурация моего приложения:
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
Любые идеи, почему я получаю эти сообщения?
Я попробовал Google после этих сообщений, а другие сказали, что это может быть конфликт между обработчиком аннотации по умолчанию и специальным обработчиком аннотаций, который я не определил.
Это мои зависимости gradle
dependencies {
compile('org.springframework.boot:spring-boot-autoconfigure')
compile('org.springframework.boot:spring-boot-starter-web')
compile("org.springframework.boot:spring-boot-starter-data-rest")
compile('org.springframework.boot:spring-boot-starter-data-jpa')
compile('com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.6.1')
compile('org.springframework.boot:spring-boot-starter-security')
compile("mysql:mysql-connector-java:5.1.34")
testCompile("junit:junit")
testCompile("org.springframework.boot:spring-boot-starter-test")
testCompile("com.jayway.jsonpath:json-path")
testCompile("com.jayway.jsonpath:json-path-assert:0.9.1")
}
В моем пути к классам у меня нет никаких настроек, которые могут иметь место.
Ответы
Ответ 1
Как сказано в комментариях, это отладочное сообщение, и никаких действий не требуется.
Для интересующихся, вот некоторые подробности:
При запуске запускается HandlerMapping для определения соответствия между запросами и объектами-обработчиками. Класс AbstractDetectingUrlHandlerMapping имеет метод detectHandlers, который зарегистрируйте все обработчики, найденные в текущем ApplicationContext. При итерации по beans, beans, для которых не идентифицированы URL-адреса, отклоняются.
Вот соответствующий код:
// Take any bean name that we can determine URLs for.
for (String beanName : beanNames) {
String[] urls = determineUrlsForHandler(beanName);
if (!ObjectUtils.isEmpty(urls)) {
// URL paths found: Let consider it a handler.
registerHandler(urls, beanName);
}
else {
if (logger.isDebugEnabled()) {
logger.debug("Rejected bean name '" + beanName + "': no URL paths identified");
}
}
}
Ответ 2
В моем случае я получаю похожие сообщения из-за 'logging.level.org.springframework.web = DEBUG.