1. ホーム
  2. Java

アクセス制限です。タイプ 'JPEGCodec' は API ではない ☞My Blog Github ☜ ホームページを見る

2022-02-08 03:45:24
<パス

質問

今日、プロジェクトをインポートする際、Eclipseは以下のエラーを報告しました。

Access restriction: The type 'JPEGCodec' is not API (restriction on required library 'C:\Program Files\Java\jdk1.8.0_191\jre\lib\rt.jar')


初めてこのエラーに遭遇したとき、Baiduで調べたところ、Eclipseがデフォルトでアクセス制限のAPIをErrorレベルに設定しているため、エラーでコンパイルされることが判明しました。

回避策

方法1(推奨)

プロジェクトからJREを直接削除した後、以下の手順でJREをプロジェクトに再追加します。

  1. プロジェクトを右クリックし、プロパティ -> Java Build Path -> Libraries -> JRE System Library [jdkxxxx] ->を選択します。 Remove
  2. 次に、以下を選択します。 Add Librariy... を実行して、JRE に再参加します。

方法2

制限されたAPIへのアクセスに関して、Eclipseのコンパイルレベルを変更します。

ウィンドウ -> 環境設定 -> Java -> コンパイラ -> エラー/警告 を選択します。 Deprecated and restricted API を設定し Forbidden reference(access rules) レベルを「警告」に設定します。

参考リンク