Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spring启动父启动器依赖项覆盖_Java_Spring_Mongodb_Spring Boot_Spring Data Mongodb - Fatal编程技术网

Java Spring启动父启动器依赖项覆盖

Java Spring启动父启动器依赖项覆盖,java,spring,mongodb,spring-boot,spring-data-mongodb,Java,Spring,Mongodb,Spring Boot,Spring Data Mongodb,因此,当前版本没有使用我需要使用的spring data mongodb 2.1.0 问题是每次我只是通过添加 <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-mongodb</artifactId> <version>2.1.1.RELEASE</version> </

因此,当前版本没有使用我需要使用的spring data mongodb 2.1.0

问题是每次我只是通过添加

<dependency>
    <groupId>org.springframework.data</groupId>
    <artifactId>spring-data-mongodb</artifactId>
    <version>2.1.1.RELEASE</version>
</dependency>

org.springframework.data
spring数据mongodb
2.1.1.1发布
我最终得到一个编译错误:

org.springframework.beans.factory.BeanCreationException:错误 正在创建类中定义的名为“ServletEndPointRegister”的bean 路径资源 [org/springframework/boot/actuate/autoconfigure/endpoint/web/ServletEndpointManagementContextConfiguration$WebMvcServletEndpointManagementContextConfiguration.class]: 通过工厂方法实例化Bean失败;嵌套异常是 org.springframework.beans.BeanInstantiationException:未能 实例化 [org.springframework.boot.actuate.endpoint.web.servletendpointregistrator]: 工厂方法“servletEndpointRegistrar”引发异常;嵌套 例外情况为org.springframework.beans.factory.BeanCreationException: 创建在类路径中定义了名为“healthEndpoint”的bean时出错 资源 [org/springframework/boot/actuate/autoconfigure/health/HealthEndpointConfiguration.class]: 通过工厂方法实例化Bean失败;嵌套异常是 org.springframework.beans.BeanInstantiationException:未能 实例化[org.springframework.boot.actuate.health.HealthEndpoint]: 工厂方法“healthEndpoint”引发异常;嵌套异常是 org.springframework.beans.factory.unsatifiedDependencyException: 创建名为的bean时出错 'org.springframework.boot.actuate.autoconfigure.mongo.MongoHealthIndicatorConfiguration': 通过构造函数参数0表示的未满足依赖关系; 嵌套异常是 org.springframework.beans.factory.unsatifiedDependencyException: 创建在类路径中定义了名称为“mongoTemplate”的bean时出错 资源 [org/springframework/boot/autoconfigure/data/mongo/MongoDataAutoConfiguration.class]: 通过方法“mongoTemplate”表示的未满足的依赖关系 参数1;嵌套异常是 org.springframework.beans.factory.unsatifiedDependencyException: 创建类中定义了名为“mappingMongoConverter”的bean时出错 路径资源 [org/springframework/boot/autoconfigure/data/mongo/MongoDataAutoConfiguration.class]: 通过方法表示的未满足依赖关系 “mappingMongoConverter”参数1;嵌套异常是 org.springframework.beans.factory.BeanCreationException:错误 创建名为“mongoMappingContext”的bean(在类路径中定义) 资源 [org/springframework/boot/autoconfigure/data/mongo/MongoDataAutoConfiguration.class]: bean初始化失败;嵌套异常是 java.lang.NoSuchMethodError: org.springframework.data.mapping.context.AbstractMappingContext.setApplicationContext(Lorg/springframework/context/ApplicationContext;)V


AbstractMappingContext
的API在较新版本中已更改,因此与当前的spring启动版本不兼容

我建议您将整个spring引导版本升级到适合您所需的spring data mongo版本的版本

编辑:


恐怕2.1.1版本还不支持spring引导。最新版本是使用
org.springframework.data:spring data mongodb:2.0.11.RELEASE

在较新版本中,
AbstractMappingContext
的API已更改,因此与当前的spring启动版本不兼容

我建议您将整个spring引导版本升级到适合您所需的spring data mongo版本的版本

编辑:

恐怕2.1.1版本还不支持spring引导。最新的版本是使用
org.springframework.data:spring数据mongodb:2.0.11.RELEASE
引用书籍第37页:

…重写拉入的依赖项时要小心 通过Spring引导启动器依赖项传递。虽然不同 版本可能会很好地工作,可以提供大量的舒适性 了解到初学者选择的版本已经 一起玩得很好。您应该只覆盖这些 特殊情况下的可传递依赖项(例如错误修复 在更新的版本中)

我个人不会冒这样的风险重写
spring数据mongodb
版本

如果您真的需要使用最新版本的spring data mongodb,我建议将spring Boot升级到。

引用本书第37页:

…重写拉入的依赖项时要小心 通过Spring引导启动器依赖项传递。虽然不同 版本可能会很好地工作,可以提供大量的舒适性 了解到初学者选择的版本已经 一起玩得很好。您应该只覆盖这些 特殊情况下的可传递依赖项(例如错误修复 在更新的版本中)

我个人不会冒这样的风险重写
spring数据mongodb
版本


如果您确实需要使用最新版本的
spring data mongodb
,我建议按照@Boris answer将spring Boot升级到。

,如果您执行以下操作,您可以证明他是正确的。 到这里: 选择以下选项:

创建项目演示。 如果您随后展开并导入Intellij,然后获取有效的POM并搜索原始需求,您将发现这是一个比原始需求高出一个版本的版本。 如果有一个网站显示了Spring boot版本的所有修订组合,那就太好了……如果有人知道,请添加到这个网站。谢谢

根据@Boris的回答,如果你做了以下事情,你可以证明他是正确的。 到这里: 选择以下选项:

创建项目演示。 如果你再扩展