Ошибка обновления до драйвера Mongo Java 3.2.2

#spring-data #spring-data-mongodb #mongo-java #mongo-java-driver

#весна-данные #spring-data-mongodb #mongo-java #mongo-java-driver

Вопрос:

мы перешли на MongoDB 3.2.6. Какие могут быть совместимые версии mongo для приведенных ниже зависимостей,

  1. версия драйвера mongo java (org.mongodb)
  2. версия spring data mongo (org.springframework.data)
  3. версия spring data commons (spring-data-commons)

Я попытался обновить их до версии 3.2.2 для драйвера Java и версии 1.9.4.для spring data и spring commons, но столкнулся с проблемами, совместимыми с maven. Ниже приведены 2 проблемы, которые я не могу решить на данный момент.

Пожалуйста, подскажите, в чем может быть проблема.

Проблема 1:

 The type org.springframework.data.repository.query.QueryByExampleExecutor cannot be resolved. It is indirectly referenced from required .class files
  

Проблема 2:

 Error occured processing XML 'Invalid default: public abstract java.lang.Class 
 org.springframework.data.mongodb.repository.config.EnableMongoRepositories.repositoryBaseClass()'. See Error Log for more details
  

Попробовал mvn clean dependency:tree , и это успешно. Но mvn clean compil e терпит неудачу с ошибкой 1, упомянутой выше.

Ответ: Я могу решить обе проблемы, обновив до 1.12.1 для spring-data-commons. Это решит вышеупомянутые проблемы во время компиляции. Ниже приведены мои текущие настройки. mongo-java-driver до версии 3.2.2, spring-data-mongodb до версии 1.9.4.RELEASE, spring-data-commons до 1.12.1. В соответствии с документацией Spring data commons Spring Data Commons я также обновил свою версию Spring framework до версии 4.2.8.RELEASE.

Столкнувшись с проблемой ниже, которую я не смог решить. Любые идеи будут оценены.

Проблема 1:

 06:37:33.943 [localhost-startStop-1] DEBUG o.s.c.t.c.AnnotationAttributesReadingVisitor - Failed to class-load type while reading annotation metadata. This is a non-fatal error, but certain annotation metadata may be unavailable.
java.lang.ClassNotFoundException: javax.annotation.Nullable
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1305) ~[catalina.jar:na]
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1139) ~[catalina.jar:na]
    at org.springframework.core.type.classreading.RecursiveAnnotationAttributesVisitor.visitEnd(RecursiveAnnotationAttributesVisitor.java:47) ~[spring-core-4.2.8.RELEASE.jar:4.2.8.RELEASE]
    at org.springframework.asm.ClassReader.readAnnotationValues(ClassReader.java:1802) [spring-core-4.2.8.RELEASE.jar:4.2.8.RELEASE]
    at org.springframework.asm.ClassReader.readMethod(ClassReader.java:976) [spring-core-4.2.8.RELEASE.jar:4.2.8.RELEASE]
    at org.springframework.asm.ClassReader.accept(ClassReader.java:695) [spring-core-4.2.8.RELEASE.jar:4.2.8.RELEASE]
    at org.springframework.asm.ClassReader.accept(ClassReader.java:508) [spring-core-4.2.8.RELEASE.jar:4.2.8.RELEASE]
    at org.springframework.core.type.classreading.SimpleMetadataReader.<init>(SimpleMetadataReader.java:64) [spring-core-4.2.8.RELEASE.jar:4.2.8.RELEASE]
    at org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:98) [spring-core-4.2.8.RELEASE.jar:4.2.8.RELEASE]
    at org.springframework.core.type.classreading.CachingMetadataReaderFactory.getMetadataReader(CachingMetadataReaderFactory.java:102) [spring-core-4.2.8.RELEASE.jar:4.2.8.RELEASE]
    at org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:93) [spring-core-4.2.8.RELEASE.jar:4.2.8.RELEASE]
    at org.springframework.core.type.filter.AbstractTypeHierarchyTraversingFilter.match(AbstractTypeHierarchyTraversingFilter.java:121) [spring-core-4.2.8.RELEASE.jar:4.2.8.RELEASE]
    at org.springframework.core.type.filter.AbstractTypeHierarchyTraversingFilter.match(AbstractTypeHierarchyTraversingFilter.java:105) [spring-core-4.2.8.RELEASE.jar:4.2.8.RELEASE]
    at org.springframework.data.repository.config.RepositoryConfigurationDelegate$LenientAssignableTypeFilter.match(RepositoryConfigurationDelegate.java:202) [spring-data-commons-1.12.1.RELEASE.jar:na]
    at org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.isCandidateComponent(ClassPathScanningCandidateComponentProvider.java:346) [spring-context-4.2.8.RELEASE.jar:4.2.8.RELEASE]
    at org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.findCandidateComponents(ClassPathScanningCandidateComponentProvider.java:280) [spring-context-4.2.8.RELEASE.jar:4.2.8.RELEASE]
    at org.springframework.data.repository.config.RepositoryConfigurationDelegate.multipleStoresDetected(RepositoryConfigurationDelegate.java:167) [spring-data-commons-1.12.1.RELEASE.jar:na]
    at org.springframework.data.repository.config.RepositoryConfigurationDelegate.<init>(RepositoryConfigurationDelegate.java:88) [spring-data-commons-1.12.1.RELEASE.jar:na]
    at org.springframework.data.repository.config.RepositoryBeanDefinitionRegistrarSupport.registerBeanDefinitions(RepositoryBeanDefinitionRegistrarSupport.java:80) [spring-data-commons-1.12.1.RELEASE.jar:na]
  

Попытался добавить зависимость jsr305 из com.google.code.findbugs, но все еще вижу те же исключения.

Комментарии:

1.Кажется, вам нужно обновить до spring-data-commons 1.12.4.RELEASE

2. Спасибо за ваш ответ. Да, я решил обе проблемы, обновив до 1.12.1 для spring-data-commons. Все мои проблемы во время компиляции решены.