首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >包含casbah依赖项时出错

包含casbah依赖项时出错
EN

Stack Overflow用户
提问于 2014-10-12 01:28:46
回答 1查看 205关注 0票数 1

我在开始使用casabah来集成scala和mongoDb时遇到了问题。我使用Spring (STS)并导入了以下jar文件:

spring-data-mongodb-1.6.0.RELEASE.jar

com.mongodb.jar

casbah-Commons2.10-2.7.2.jar

casbah-query_2.10-2.7.2.jar

joda-time-2.1.jar

slf4j-api-1.7.7.jar

casbah-gridfs_2.10-2.5.0.jar

scalaj-collection_2.10-1.4.jar

slf4j-simple-1.7.7.jar

卡西巴核2.10-2.7.2.jar

mongo-2.10.0.jar

mongo-java-driver-2.10.0.jar

但是,我得到了一个错误。

错误:描述资源路径定位类型糟糕的符号引用。Implicits.class中的签名是指包com.mongodb中不可用的游标类型。它可能在当前类路径中完全丢失,或者类路径上的版本可能与编译Implicits.class时使用的版本不兼容。

我读了几篇文章说问题在于mongo驱动程序的版本,所以我也尝试使用mongo-java-driver-2.10.1.jar,但是它仍然给了我一个错误。

有人能帮我解决这个错误吗?

提前谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-14 08:26:43

看起来这是一个依赖问题。Casbah是建立在一个固定版本的Mongo Java驱动程序之上的,所以它依赖于特定的二进制兼容版本。

Casbah版本号应该都是相同的--上面主要有Casbah 2.7.2,但是gridfs版本是错误的:casbah-gridfs_2.10-2.5.0.jar

此外,Casbah 2.7.2依赖于Mongo驱动程序的2.12.2版本,然而,Casbah的最新版本是2.7.3,它依赖于Mongo驱动程序的2.12.3版本。

为了简化这一点,有一个用于Casbah的所有依赖jar,它包含了最新版本的java驱动程序和所有其他相关的依赖项。或者,pom文件应该指向声明依赖项的所有依赖包。(由于Casbah被分成子包,所以casbah-公用设施列出了所有外部依赖项)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26320955

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档