【问题标题】:How do I switch to a Spring Data development version with a Spring Boot release?如何切换到带有 Spring Boot 版本的 Spring Data 开发版本?
【发布时间】:2015-03-03 22:41:35
【问题描述】:

我正在尝试将现有应用程序移植到 MongoDB 3.0。似乎 Spring Data Mongodb (1.7.0.BUILD-SNAPSHOT) 已准备好 MongoDB 3.0,但我找不到加载版本 3 驱动程序而不是 V2 的方法。

第二个问题是,在将 pom.xml 更改为 1.7.0.BUILD-SNAPSHOT 时,我遇到了以下异常:

java.lang.NoClassDefFoundError: org/springframework/data/mapping/PersistentPropertyAccessor 

Spring Boot 和 Spring Data MongoDB 的正确版本组合是什么,这样一切才能协同工作?我知道 V3 驱动程序仍处于测试阶段,但考虑到 MongoDB 目前处于 GA 阶段,我想抢占先机。

【问题讨论】:

    标签: mongodb spring-boot spring-data-mongodb


    【解决方案1】:

    要控制 Spring Data 库的版本,请确保使用 Spring Boot 的 spring-data-releasetrain.version 属性。它将确保您在匹配版本中获得您实际依赖的所有 Spring Data 库。

    我们用于发布列车的版本实际上是列车名称。因此,对于 Fowler 发布火车,您将使用 Fowler-M1Fowler-RC1Fowler-RELEASEFowler-SR1 等(后两者在撰写本文时尚未发布)。当前的开发版本可以通过参考release train的snapshot版本来获取,e.g. Fowler-BUILD-SNAPSHOT.

    可以通过自定义 mongodb.version 属性(在撰写本文时为 3.0.0-beta3)来调整 MongoDB 驱动程序的版本。

    【讨论】: