簡體   English   中英

MongoDB Java / Scala驅動程序-缺少方法

[英]MongoDB Java / Scala drivers - Missing methods

我試圖將一個持久層從一個普通的舊數據庫(使用ScalaQuery)轉換為MongoDB,但遇到一個奇怪的問題。 我使用Casbah驅動程序,它是官方MongoDB Java驅動程序的Scala包裝器。 Java和Scala驅動程序均定義-根據文檔以及當我在Eclipse中打開.jar時的概述-一種使用單個DBObject作為參數(其中帶有ID)的findOneById方法。

但是,當我嘗試訪問它時,在Eclipse和SBT中,Scala編譯器都丟失了一個方法異常-Scala版本2.9.0-1,SBT 0.10.1。

是什么原因造成的? 這可能是已知的SBT / Scala編譯器錯誤嗎?

我只是刪除了整個存儲庫,所以所有依賴項都可以重新下載,但這並不能解決問題。

您確定在MongoCollection實例上調用findOneById嗎?

也許是錯誤的參數類型,正如我在文檔(http://api.mongodb.org/scala/casbah/2.1.2/scaladoc/com/mongodb/casbah/MongoCollection.html)上看到的那樣, findOneById應該接受類型為AnyRef的ID,然后選擇要返回的字段。

您應該嘗試使用諸如mongoCollection.findOneByID(1.asInstanceOf[Object])

關於BBObject ,它似乎沒有出現在參數列表中(除了作為將您請求的字段轉換為DBObject的隱式參數DBObject )。 自上一發行版以來,方法的簽名可能已更改。

希望這會有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM