无法导入 javax.swing.JFrame

2022-09-04 05:07:07

我一直在互联网上寻找,找不到答案。

我正在使用Eclipse,需要从javax.swing导入JFrame。但是,将鼠标悬停在声明上(在 Eclipse 中,声明应该会为您提供导入它的选项),导入选项不会显示。相反,我手动键入了导入路径,但收到错误。

更进一步,我使用包资源管理器尝试对其进行修复...不能。我有最新版本的Eclipse,以及最新的JRE和JDK。但仍然不起作用。

法典:

package com.BickDev.Game;

import java.awt.Canvas;
import java.awt.Dimension;

import javax.swing.JFrame;

public class Game extends Canvas implements Runnable {
    private static final long serialVersionUID = 1L;

    public static final int WIDTH = 320;
    public static final int HEIGHT = WIDTH / 12 * 9;
    public static final int SCALE = 2;
    public final String TITLE = "Troy's Game Test";
    private boolean running = false;


    public void run() {

    }

    public static void main(String args[]) {

        Game game = new Game();
        Dimension size = new Dimension(WIDTH * SCALE, HEIGHT * SCALE);
        game.setPreferredSize(size);
        game.setMaximumSize(size);
        game.setMinimumSize(size);

        JFrame frame = new JFrame(game.TITLE);
    }
}

导入javax.swing.JFrame现在给出了错误

Access restriction: The type JFrame is not accessible due to restriction on required library C:\ProgramFiles\Java\jre8\lib\rt.jar

不知道这意味着什么...

请帮忙....

*UPDATE 找到了 JFrame 类。但无法访问它。


答案 1

只需添加到您的模块信息.java文件。requires java.desktop;

模块信息.java:

module your_project_name{
    requires java.desktop;
}

答案 2

当你在JRE上做一个新的java项目时,选择“使用一个执行环境JRE,然后从那里选择JavaSE-1.7或1.8,应该解决问题。我以前和你一样有同样的问题。


推荐