0
  1. 我正在关注http://api.mongodb.org/scala/casbah/current/setting_up.html以便将 MongoDB 与 scala 一起使用。

  2. 我也是 sbt 的新手。上面的启动指南说:

1.1.5。设置 SBT

最后,您可以通过将以下内容添加到项目文件中来将 Casbah 添加到 SBT:

val casbah = "com.mongodb.casbah" %% "casbah" % "2.1.5.0" 双百分比 (%%) 不是错字——它告诉 SBT 库是交叉构建的,并为您的项目找到合适的版本斯卡拉版本。如果您更喜欢明确,可以使用它来代替:

// Scala 2.8.0 val casbah = "com.mongodb.casbah" % "casbah_2.8.0" % "2.1.5.0" // Scala 2.8.1 val casbah = "com.mongodb.casbah" % "casbah_2.8.1" % "2.1.5.0" // Scala 2.9.0.1(不要使用 Scala 2.9.0.final;2.9.0.1 包含关键修复) val casbah = "com.mongodb.casbah" % "casbah_2.9.0-1" % “2.1.5.0” 不要忘记重新加载项目并在之后运行 sbt update 以下载依赖项(SBT 不会像 Maven 那样检查每个构建)。

我的问题是第一行是什么意思,“在您的项目文件中添加以下行”。

我对添加依赖的理解是:

  1. 将以下行添加到 build.sbt 文件

    dependancies += "com.mongodb.casbah" % "casbah_2.9.0-1" % "2.1.5.0"
    
  2. 然后做 sbt update

但是,当我执行 sbt update 时,出现以下错误:

[error] {file:/Users/hrishikeshparanjape/git-public/ws/}default-1efcb1/*:update: sbt.ResolveException: unresolved dependency: com.mongodb.casbah#casbah_2.9.0-1;2.1.5.0: not found
[error] Total time: 1 s, completed Jul 26, 2012 9:32:59 PM

总之,我没看懂入门页面。

编辑

我的 build.sbt 文件:

name := "ws"

version := "0.1"

libraryDependencies += "com.mongodb.casbah" % "casbah_2.9.0-1" % "2.1.5.0"

我的目录结构(基本没有添加)

ws
-build.sbt
4

2 回答 2

4

我认为您需要在 build.sbt 文件中添加一个解析器。

resolvers += "snapshots" at "https://oss.sonatype.org/content/repositories/snapshots"

resolvers += "releases"  at "https://oss.sonatype.org/content/groups/scala-tools"

更多关于 sbt 的信息可以在这里找到。通读它对理解 sbt 的基础知识非常有帮助:

于 2012-07-27T06:04:56.263 回答
1

很多时间过去了,但我想为那些可能搜索 Scala MongoDB 客户端库的人分享一个更新。

我们已经发布了以 Scala 方式包装原始 mongodb-core 的 Scala 库。该 API 比 MongoDB for Scala 的 mongo-scala-driver 更加方便,并且完全异步。我们公开了 Futures 而不是回调,对于那些有更复杂需求的人来说,RXScala observables。

如果您使用的是 Play Framwork 2.4,那么有一个模块可以为 Json 准备好使用的格式化程序:https ://github.com/evojam/play-mongodb-driver 使用 Play Framework 模块,启动起来非常简单,只需几分钟即可获取工作代码。

这种方式 MongoDB 在 Scala 中很好用且易于使用。我们在关于现场驱动程序的博客文章中提供了示例查询执行的比较。

于 2015-06-29T11:09:48.737 回答