为什么几秒钟后我的JFrame关闭?

时间:2020-01-11 12:16:54

标签: java swing

我是java的新手,并且学习了swing和JFrames。我已经阅读了多个教程,但无法使JFrame保持打开状态。运行代码时,我可以看到空的JFrame已打开,但大约2秒钟后它关闭或消失。当我使用IntelliJ和Eclipse时会发生这种情况。我已经发布了一个示例代码,该示例应该打开一个空的JFrame,但是它总是在几秒钟后消失。有人可以帮我阻止它关闭吗?

我已尝试修复的问题。

  • 重新安装了Java jdk-13.0.1
  • 重新安装了IntelliJ和Eclipse
  • 将jdk / bin目录添加到Windows环境变量中
  • 更新的视频卡驱动程序

    package com.FrameDemo;
    
    import javax.swing.*;
    
    public class EmptyJFrame {
    
        public static void main(String[] args) {
    
            JFrame frame = new JFrame();
            frame.setSize(300, 300);
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.setVisible(true);
        }
    }
    

1 个答案:

答案 0 :(得分:0)

我无法重现该问题,但是我可以描述一下您的代码如何使用从命令行构建的Java13进行工作:

  • 以某种方式获得命令提示符,并导航到com文件夹的位置(该文件夹依次包含FrameDemoEmptyJFrame.java
  • 您说的JDK已经在路径中,请输入javac com\FrameDemo\EmptyJFrame.java
  • 然后输入java com.FrameDemo.EmptyJFrame

在我的情况下,我将您的文件命名为c:\test\com\FrameDemo\EmptyJFrame.java,因此我在c:\test中键入了这些命令,还需要首先在路径中添加JDK:

Microsoft Windows [Version 10.0.17134.1184]
(c) 2018 Microsoft Corporation. All rights reserved.

C:\test>path c:\External\jdk-13\bin

C:\test>java --version
openjdk 13 2019-09-17
OpenJDK Runtime Environment (build 13+33)
OpenJDK 64-Bit Server VM (build 13+33, mixed mode, sharing)

C:\test>javac com\FrameDemo\EmptyJFrame.java

C:\test>java com.FrameDemo.EmptyJFrame

是Java13(尽管我不确定.0.1,它来自2019-09-17),是的,它可以工作,面板保持打开状态,直到我自己关闭它为止。

相关问题