Guavaは、新しいコレクションタイプを含むGoogleのコアJavaライブラリのセットです。 (マルチマップやマルチセットなど)、不変コレクション、グラフライブラリ、および 並行性、I / O、ハッシュ、キャッシュ、プリミティブ、文字列などのユーティリティ!それ Google内のほとんどのJavaプロジェクトで広く使用されており、多くの人に広く使用されています 他の会社も同様です。
グアバには2つのフレーバーがあります。
アンドロイドグア
バソースアンドロイドディレクトリ。グアバの Maven グループ ID は で、アーティファクト ID は です。 Guavaは8つの異なる「フレーバー」を提供します:<>つは(Java <>+)JREで使用するためのもので、もう<>つは AndroidまたはAndroidとの互換性を希望するライブラリで使用するため。 これらのフレーバーは、Maven バージョン・フィールドで または として指定されます。Guava に依存する方法の詳細については、「ビルドでの Guava の使用」を参照してください。
com.google.guava
guava
31.1-jre
31.1-android
Maven を使用して Guava への依存関係を追加するには、次を使用します。
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>31.1-jre</version>
<!-- or, for Android: -->
<version>31.1-android</version>
</dependency>
Gradle を使用して依存関係を追加するには:
dependencies {
// Pick one:
// 1. Use Guava in your implementation only:
implementation("com.google.guava:guava:31.1-jre")
// 2. Use Guava types in your public API:
api("com.google.guava:guava:31.1-jre")
// 3. Android - Use Guava in your implementation only:
implementation("com.google.guava:guava:31.1-android")
// 4. Android - Use Guava types in your public API:
api("com.google.guava:guava:31.1-android")
}
いつ使用するか、いつ使用するかの詳細については、 API と実装の分離に関する Gradle のドキュメントを参照してください。
api
implementation
ブランチから構築されたGuavaのスナップショットは、Mavenから入手できます バージョンを使用する、またはアンドロイド用 味。
master
HEAD-jre-SNAPSHOT
HEAD-android-SNAPSHOT
クラスまたはメソッド レベルで注釈でマークされた API は次のとおりです。
変更される場合があります。それらは、任意の方法で変更することも、いつでも削除することもできます。
時間。コードがライブラリ自体である場合(つまり、
自分の管理外のユーザー)、再パッケージ化しない限り、ベータ API を使用しないでください。コードがライブラリの場合は、
グアバベータチェッカーは、@Beta APIを使用しないことを確認します!
@Beta
なしのAPIは、無期限にバイナリ互換性を維持します 未来。(以前は、非推奨の後にこのような API が削除されることがありました 時代。非 API を削除する最後のリリースは Guava 21.0 でした。APIでさえ残ります(そうでない限り)。私たちは持っていません 物事を再び削除し始める予定ですが、正式には、私たちは オプションは、驚きの場合(たとえば、深刻なセキュリティ問題など)に開きます。
@Beta
@Beta
@Deprecated
@Beta
Guava には、実行時のリンケージに必要な依存関係が 1 つあります。また、注釈のみの依存関係もいくつかありますが、これについては後で説明します。 そのリンクの詳細。
com.google.guava:failureaccess:1.0.1
すべてのオブジェクトのシリアル化された形式は、特に明記されていない限り変更される可能性があります 然も無くば。これらを永続化せず、将来読み取ることができると想定してください ライブラリのバージョン。
このクラスは、悪意のある呼び出し元から保護するようには設計されていません。あなたが 信頼されたコードと信頼されていないコード間の通信には使用しないでください。
メインラインフレーバーについては、OpenJDK 8のみを使用してライブラリをテストし、 OpenJDK 11 on Linux.いくつかの機能、特に、 他の環境では正しく動作しない可能性があります。アンドロイドフレーバーについては、私たちの 単体テストは、API レベル 15 (アイスクリーム サンドイッチ) でも実行されます。
com.google.common.io