java.lang.NoSuchFieldError: IMPORT_BEAN_NAME_GENERATOR - PullRequest
0 голосов
/ 06 ноября 2019

У меня есть модульный тест со следующими аннотациями:

@ExtendWith(SpringExtension.class)
@ContextConfiguration(classes = TestConfiguration.class)
@TestPropertySource("classpath:application-test.properties")

Я использую Spring Boot 2.2.0 и Spring 5.2.0 и Junit Jupiter. Тест проверяет класс dao, используя базу данных H2 в памяти. Это работало до того, как я перешел на весеннюю загрузку 2.2.0. Я получаю сообщение об ошибке

java.lang.NoSuchFieldError: IMPORT_BEAN_NAME_GENERATOR

При отладке вижу

@Override
@Deprecated
public void registerBeanDefinitions(AnnotationMetadata metadata, BeanDefinitionRegistry registry) {
    registerBeanDefinitions(metadata, registry, ConfigurationClassPostProcessor.IMPORT_BEAN_NAME_GENERATOR);
}

в классе RepositoryBeanDefinitionRegistrarSupport. Я получаю исключение на registerBeanDefinitions. Метод устарел, в документации сказано, что он заменен методом с тремя аргументами здесь . Когда я устанавливаю точку останова в ConfigurationClassPostProcessor, где определено IMPORT_BEAN_NAME_GENERATOR, код не достигает этого. Видимо, что-то использует старый метод, но я не могу выяснить, что есть. Когда я возвращаюсь к весенней загрузке 2.1.8, я не получаю эту ошибку.

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