Exception in thread "main" java.awt.HeadlessException: No X11 DISPLAY variable was set, but this program performed an operation which requires it. at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:159) at java.awt.Window.(Window.java:432) at java.awt.Frame.(Frame.java:403) at javax.swing.JFrame.(JFrame.java:202) at DrawGUI.(DrawGUI.java:15) at ShapeCreator.(ShapeCreator.java:31) at ShapeCreator.main(ShapeCreator.java:138)
此错误消息是什么意思?我该如何解决?
答案 0 :(得分:18)
我假设您正试图通过隧道进入某个unix框。
确保在PuTTY设置中启用了X11转发。
答案 1 :(得分:3)
这似乎是一个更普遍的SWING / AWT / JDK问题,只有JBOSS安装程序:
下面接受的答案解决了我的问题:
Unable to run java gui programs with ubuntu
(“sudo apt-get install openjdk-6-jdk”)
答案 2 :(得分:2)
您的系统没有GUI管理器。主要发生在Solaris / Linux机器箱中。如果您在其中使用GUI,请确保安装了GUI管理器,并且您可能还想浏览 DISPLAY 变量。
答案 3 :(得分:0)
问题陈述 - 尝试从应用程序初始化java.awt.Component时获取java.awt.HeadlessException,因为tomcat环境没有任何头(终端)。
问题 - 在没有虚拟显示终端的情况下设置了linux虚拟环境。试图安装虚拟显示器 - Xvfb,但Xvfb已被redhat社区取消。
解决方案 - 使用yum install xorg-x11-drv-vmware.x86_64安装'xorg-x11-drv-vmware.x86_64'并执行startx。最后使用export DISPLAY =:0.0将显示设置为:0.0然后执行xhost +
答案 4 :(得分:0)
我认为您正在尝试从UNIX \ LINUX运行一些实用程序或shell脚本,它们具有一些GUI。无论如何
解决方案:老兄你需要的只是一台XServer& X11转发已启用。我使用XMing(XServer)。您已经启用了X11转发功能。只需安装它(XMing)并在使用PuTTY创建会话时继续运行。