我正在尝试运行一个在源启动时具有内置gui的服务器。我可以弄清楚如何把它拿出来然而我想尝试整理它;这是我的错误
Exception in thread "main" java.lang.ExceptionInInitializerError
Caused by: 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:207)
at java.awt.Window.<init>(Window.java:535)
at java.awt.Frame.<init>(Frame.java:420)
at java.awt.Frame.<init>(Frame.java:385)
at javax.swing.JFrame.<init>(JFrame.java:180)
at server.model.controlpanel.ControlPanel.<init>(ControlPanel.java:20)
at server.Server.<clinit>(Server.java:69)
答案 0 :(得分:2)
如果您绝对必须在服务器中保留GUI代码,则可以使用Xvfb提供虚拟X服务器,并将DISPLAY
设置为指向该代码。但实际上,最好的答案是修改代码,这样就不会尝试显示GUI。
答案 1 :(得分:0)
有趣的是,你的代码因为在检查它是否可以使用X11 ...
时缺少X11而失败我强烈怀疑你安装的java版本没有无头(no-X11)支持。