質問

このパッケージのクラスの目的は何ですか?

アプリでBase64エンコーディングを使用したい。 Eclipseで入力しているときに、" com.google.appengine.repackaged.com.google.common.util.Base64"というクラスをインポートするかどうかを尋ねられます

このクラスの機能に関するドキュメントが見つかりません。 javadocがないか、Google App Engineマニュアルに記載されていません(表示されています)。これはある種の「隠された」ものですか?アクセスできないはずのAPI?

役に立ちましたか?

解決

  

これはある種の「隠された」ものですか?アクセスできないはずのAPI?

はい。

Javaクラスを再パッケージ化する目的は、ライブラリの別のバージョンと競合する可能性のあるライブラリのプライベートコピーを保持することです(アプリケーション開発者がjarファイルとしてプロジェクトに追加します)。

これはJAR-hellに対する可能な答えの1つです。

JDKでもこのメカニズムを利用しています。 com.sun.org.apache.xercesを使用します。com.sun.orgは、Sunが含める(再パッケージ化する)ことを選択したApacheプロジェクトによって開発されたXML解析ライブラリです。

これらのクラスを直接呼び出さないでください。 (可能性があり、おそらく大丈夫でしょうが、公式のAPIの一部ではないため、次のバージョンでは表示されなくなる可能性があります。)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top