發行說明可在此處取得。
Java 驅動程式的參考和 API 文件可在此處取得。
此處提供了 Kotlin 驅動程式的參考和 API 文件。
此處提供了 Scala 驅動程式的參考和 API 文件。
有關如何使用 MongoDB JVM 驅動程式的教學課程,請參考 MongoDB University。使用 Java 驅動程式和 Kotlin 驅動程式的其他教學課程、影片和程式碼範例也可以在 MongoDB 開發人員中心找到。
有關 MongoDB Java、Kotlin 和 Scala 驅動程式的問題、疑問或回饋,請查看我們的支援管道。請不要直接向任何驅動程式開發人員發送電子郵件提出問題或問題 - 您更有可能在 MongoDB 社群論壇或 StackOverflow 上獲得答案。
請至少在您的描述中包含您正在使用的驅動程式的確切版本。如果遇到連接問題,將建構 MongoClient 實例的程式碼行以及傳遞給建構函數的所有參數的值貼到其中通常也很有用。您還應該檢查應用程式日誌中是否有任何與連線相關的異常,並發布這些異常。
您認為您在 Java、Kotlin 或 Scala 驅動程式中發現了錯誤嗎?想要查看驅動程式中的新功能嗎?請在我們的問題管理工具 JIRA 中開啟案例:
JIRA 中針對驅動程式和核心伺服器(即 SERVER)專案的錯誤報告是公開的。
如果您發現驅動程式或任何其他 MongoDB 專案中存在安全漏洞,請根據此處的說明進行報告。
當對公共 API 進行重大變更時,將發生重大增量(例如 4.x -> 5.x)。在主要版本中刪除的所有方法和類別都將在先前主要版本分支的先前版本中被棄用,和/或在發行說明中以其他方式呼叫。
當添加重要的新功能或發生重大增強或錯誤修復時,將發生較小的 5.x 增量(例如 5.1、5.2 等),這些增強或錯誤修復可能會影響某些邊緣情況(例如依賴於由一個錯誤)。增強功能的一個範例是新增方法或類別以支援新增到 MongoDB 伺服器的新功能。次要版本幾乎總是與同一主要版本分支的先前次要版本二進位相容,除非下面指出。
補丁 5.xy 增量(例如 5.0.0 -> 5.0.1、5.1.1 -> 5.1.2 等)僅用於錯誤修復,並且始終與同一次要版本分支的先前補丁版本二進位相容。
標有@Alpha
註釋的 API 處於開發的早期階段,在未來的版本中可能會發生不相容的更改,甚至被刪除,並且可能缺少一些預期的功能。帶有@Alpha
註釋的 API 可能包含影響功能、效能和穩定性的已知問題。它們也不受其包含庫所做的任何相容性保證的約束。
不建議應用程式在生產環境中使用 Alpha API,也不建議程式庫(包含在使用者的 CLASSPATH 中,不受程式庫開發人員控制)依賴這些 API。 Alpha API 僅用於實驗目的。
在類別或方法層級以@Beta
註解標記的 API 可能會發生變化。它們可以隨時以任何方式修改,甚至刪除。如果您的程式碼本身就是一個函式庫(即它在您自己控制範圍之外的使用者的 CLASSPATH 上使用),那麼您不應該使用 beta API,除非您重新打包它們(例如透過使用著色等)。
在類別或方法層級標記有@Deprecated
註釋的 API 將繼續受支持,直到下一個主要版本,但建議停止使用它們。
com.mongodb.internal.*
套件中的所有程式碼都被視為私有 API,根本不應該依賴。它可以隨時改變。
Maven、Gradle、Ivy 等的二進位檔案和相依性資訊可以在 http://search.maven.org 找到。
Maven 範例:
< dependency >
< groupId >org.mongodb</ groupId >
< artifactId >mongodb-driver-sync</ artifactId >
< version >x.y.z</ version >
</ dependency >
快照版本也會透過 Sonatype 定期發布。
Maven 範例:
< repositories >
< repository >
< id >sonatype-snapshot</ id >
< url >https://oss.sonatype.org/content/repositories/snapshots/</ url >
</ repository >
</ repositories >
建置和編譯原始碼需要 Java 17+ 和 git。建置並測試驅動程式:
$ git clone https://github.com/mongodb/mongo-java-driver.git
$ cd mongo-java-driver
$ ./gradlew check
測試套件要求 mongod 與enableTestCommands
一起運行,可以使用--setParameter enableTestCommands=1
命令列參數進行設定:
$ mkdir -p data/db
$ mongod --dbpath ./data/db --logpath ./data/mongod.log --port 27017 --logappend --fork --setParameter enableTestCommands=1
如果執行測試時遇到"Too many open files"
錯誤,則需要在啟動 mongod 之前增加可用檔案描述子的數量,如 https://www.mongodb.com/docs/manual/reference/ulimit 中所述/
在 IntelliJ 中執行程式碼需要幾個手動設定步驟:
建置和編譯原始碼需要 Java 17+。
錯誤: java: cannot find symbol: class SNIHostName location: package javax.net.ssl
修正:設定/首選項 > 建置、執行、部署 > 編譯器 > Java 編譯器 - 取消勾選“使用‘--release’選項進行交叉編譯(Java 9 及更高版本)”
錯誤: java: package com.mongodb.internal.build does not exist
修復:以下任一項:
generateBuildConfig
任務:例如: ./gradlew generateBuildConfig
或透過Gradle>driver-core>Tasks>buildconfig>generateBuildConfiggenerateBuildConfig
設定為Before Build 執行。透過 Gradle > 任務 > buildconfig > 右鍵單擊generateBuildConfig - 按一下“在建置之前執行”