1. ホーム
  2. Eclipse

アクセス制限です。メソッド 'CharacterDecoder.decodeBuffer(String)' は API ではありません...

2022-02-10 11:08:30

BASE64でJARパッケージが見つからない問題を解決する方法 この記事では、以前書かれていたものの、1つの方法しか文書化されていなかった問題に対する3つの解決策を挙げています。

最近、以前のプロジェクトをメンテナンスしたところ、下図のようにBASE64のエンコードとデコードを使用しているところでエラーメッセージが表示されることがわかりました。

eclipseの設定の問題です。eclipseはこれらのアクセス制限されたAPIをデフォルトでERRORに設定しており、いくつかの解決策を以下に示します。

解決策1

プロジェクトを右クリック -->ビルドパス -->ビルドパスの構成 -->JREシステムライブラリ -->アクセスルール -->追加、主な手順は以下のスクリーンショットの通り。

プロンプトのエラーメッセージが消え、エラーが解決されるのは

オプション2

Windows -> 環境設定 -> Java -> コンパイラ -> エラー/警告 -> Deprecated and trstricted API -> Forbidden reference (access rules): -> 警告に変更する。

オプション3.

ビルドパスからJREシステムライブラリを削除し、JREシステムライブラリを追加して、再コンパイルすれば完了です。