リリースノートはここから入手できます。
Java ドライバーのリファレンスおよび API ドキュメントはここから入手できます。
Kotlin ドライバーのリファレンスと API ドキュメントはここから入手できます。
Scala ドライバーのリファレンスと API ドキュメントはここから入手できます。
MongoDB JVM ドライバーの使用方法に関するチュートリアルについては、MongoDB University を参照してください。 Java ドライバーと Kotlin ドライバーの両方を使用した追加のチュートリアル、ビデオ、コード例は、MongoDB Developer Center にもあります。
MongoDB Java、Kotlin、および Scala ドライバーに関する問題、質問、フィードバックについては、サポート チャネルをご覧ください。問題や質問についてドライバー開発者に直接電子メールを送信しないでください。MongoDB コミュニティ フォーラムまたは StackOverflow で回答が得られる可能性が高くなります。
少なくとも、使用しているドライバーの正確なバージョンを説明に含めてください。接続に問題がある場合は、MongoClient インスタンスを構築するコード行に、コンストラクターに渡すすべてのパラメーターの値とともに貼り付けると便利な場合があります。また、接続関連の例外がないかアプリケーション ログを確認し、それらも投稿する必要があります。
Java、Kotlin、または Scala ドライバーにバグを見つけたと思いますか?ドライバーの新機能を知りたいですか?問題管理ツール JIRA でケースを開いてください。
ドライバーおよびコア サーバー (つまり SERVER) プロジェクトの JIRA のバグ レポートは公開されています。
ドライバーまたはその他の MongoDB プロジェクトでセキュリティの脆弱性を特定した場合は、こちらの手順に従って報告してください。
大幅な増分 (4.x -> 5.x など) は、パブリック API に重大な変更が加えられるときに発生します。メジャー リリースで削除されたすべてのメソッドとクラスは、前のメジャー リリース ブランチの前のリリースで非推奨になっているか、リリース ノートで言及されています。
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 に依存したりすることはお勧めできません。アルファ API は実験目的のみを目的としています。
クラスまたはメソッド レベルで@Beta
アノテーションが付いている API は変更される可能性があります。これらは、いつでも任意の方法で変更したり、削除したりすることができます。コード自体がライブラリである場合 (つまり、独自の制御外のユーザーの CLASSPATH で使用されている場合)、(シェーディングなどを使用して) 再パッケージ化しない限り、ベータ 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"
エラーが発生した場合は、https://www.mongodb.com/docs/manual/reference/ulimit で説明されているように、mongod を開始する前に利用可能なファイル記述子の数を増やす必要があります。 /
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 >generateBuildConfig 経由generateBuildConfig
を設定します。 Gradle > Tasks > buildconfig >generateBuildConfigを右クリックし、「Execute Before Build」をクリックします。