我的所有java应用程序现在抛出一个java.awt.headlessexception

所以几天前我有几个使用Swing库的Java应用程序,尤其是JFrame 。 他们都工作得很好,现在他们都抛出这个例外:

java.awt.headlessexception 

我不知道是什么改变了我的Java版本偶然更新了。

谢谢你尽你所能的帮助。

编辑:

这是一小段代码,它给了我一个例外。

 import javax.swing.JFrame; public class test { public static JFrame frame; public static void main(String[] args) { frame = new JFrame("test"); frame.setVisible(true); frame.setLocationRelativeTo(null); } } 

HeadlessException

在不支持键盘,显示器或鼠标的环境中调用依赖于键盘,显示器或鼠标的代码时,抛出此exception。

设置无头模式使用

java -Djava.awt.headless=true

在Java SE平台中使用无头模式

多个Linux发行版具有单独的JRE基础包和JRE GUI。

例如,在RHEL7 / CentOS 7上,如果您只安装了此软件包:

  • Java的1.8.0-的OpenJDK,无头

您还需要安装此软件包:

  • Java的1.8.0-的OpenJDK

您可以尝试更改当前使用的JRE。 转到项目的“运行配置”,将JRE从项目的默认值更改为Java平台“标准”版本。