1. ホーム
  2. Java

アクセス制限の解決方法: ---- in Java

2022-02-23 19:55:14
package com.shijianchuli;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Demo1 extends JFrame{
	MyPanel mp = null;
	public static void main(String[] args) {
		// TODO Auto-generated method stub

	}

}

class MyPanel extends JPanel{
	public void paint(Graphics g)
	{
		
	}
}


これはあくまで初期段階のプログラムですが、このようなエラーメッセージが表示されます。

Accessrestriction: The type JFrame is not accessible due to restriction on requiredlibrary D:\Program FilesJavajre7librt.jar

問題の原因:Eclipseは、これらのアクセス制限されたAPIをデフォルトでERRORに設定します。

解決方法

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

2. プロジェクトビルドパスから JRESystem ライブラリを削除し、ライブラリ JRESystem Library を追加して再コンパイルすれば、すべてうまくいきます。

3. プロジェクト->プロジェクトのプロパティ->javabuilderパス->ライブラリタブで右クリックし、JRE SystemLibraryのAccessrules、アクセス可能のadsun/**、項目が存在すれば編集します。

4. Windows-> 環境設定 -> Java -> インストールされたJRE -> 使用するJDKを選択 -> 編集 -> 外部JARを追加する

テスト結果(MyEclipse)です。

     解決策1が機能する


<スパン <スパン

<スパン <スパン