Opengl 为什么cronned作业无法打开X显示连接

Opengl 为什么cronned作业无法打开X显示连接,opengl,cron,lwjgl,x11,Opengl,Cron,Lwjgl,X11,我有一个java应用程序使用LWJGL和OpenGL呈现一些精灵。在我将其移动到没有物理图形卡的远程虚拟机之前,它工作得很好,Mesa 3d和相关的东西被用来在那里模拟它。当我通过ssh连接并手动启动作业时,工作正常。但被cronned它抛出了一个例外 java.lang.ExceptionInInitializerError: null at org.lwjgl.opengl.Pbuffer.createPbuffer(Pbuffer.java:234) ~[lwjgl.jar

我有一个java应用程序使用LWJGL和OpenGL呈现一些精灵。在我将其移动到没有物理图形卡的远程虚拟机之前,它工作得很好,Mesa 3d和相关的东西被用来在那里模拟它。当我通过ssh连接并手动启动作业时,工作正常。但被cronned它抛出了一个例外

java.lang.ExceptionInInitializerError: null
        at org.lwjgl.opengl.Pbuffer.createPbuffer(Pbuffer.java:234) ~[lwjgl.jar:na]
        at org.lwjgl.opengl.Pbuffer.<init>(Pbuffer.java:219) ~[lwjgl.jar:na]
        at org.lwjgl.opengl.Pbuffer.<init>(Pbuffer.java:190) ~[lwjgl.jar:na]
        ...
        at java.lang.Thread.run(Thread.java:724) ~[na:1.7.0_40]
Caused by: java.lang.RuntimeException: org.lwjgl.LWJGLException: Could not open X display connection
        at org.lwjgl.opengl.Display.<clinit>(Display.java:141) ~[lwjgl.jar:na]
        ... 7 common frames omitted
Caused by: org.lwjgl.LWJGLException: Could not open X display connection
        at org.lwjgl.opengl.LinuxDisplay.openDisplay(Native Method) ~[lwjgl.jar:na]
        at org.lwjgl.opengl.LinuxDisplay.incDisplay(LinuxDisplay.java:306) ~[lwjgl.jar:na]
        at org.lwjgl.opengl.LinuxDisplay.internAtom(LinuxDisplay.java:616) ~[lwjgl.jar:na]
        at org.lwjgl.opengl.LinuxDisplay.init(LinuxDisplay.java:721) ~[lwjgl.jar:na]
        at org.lwjgl.opengl.Display.<clinit>(Display.java:138) ~[lwjgl.jar:na]
        ... 7 common frames omitted
java.lang.ExceptionInInitializeError:null
在org.lwjgl.opengl.Pbuffer.createPbuffer(Pbuffer.java:234)~[lwjgl.jar:na]
在org.lwjgl.opengl.Pbuffer.(Pbuffer.java:219)~[lwjgl.jar:na]
在org.lwjgl.opengl.Pbuffer.(Pbuffer.java:190)~[lwjgl.jar:na]
...
在java.lang.Thread.run(Thread.java:724)~[na:1.7.0_40]
原因:java.lang.RuntimeException:org.lwjgl.LWJGLException:无法打开X显示连接
在org.lwjgl.opengl.Display.(Display.java:141)~[lwjgl.jar:na]
... 省略了7个公共框架
原因:org.lwjgl.LWJGLException:无法打开X显示连接
在org.lwjgl.opengl.LinuxDisplay.openDisplay(本机方法)~[lwjgl.jar:na]
在org.lwjgl.opengl.LinuxDisplay.incDisplay(LinuxDisplay.java:306)~[lwjgl.jar:na]
在org.lwjgl.opengl.LinuxDisplay.internAtom(LinuxDisplay.java:616)~[lwjgl.jar:na]
在org.lwjgl.opengl.LinuxDisplay.init(LinuxDisplay.java:721)~[lwjgl.jar:na]
在org.lwjgl.opengl.Display.(Display.java:138)~[lwjgl.jar:na]
... 省略了7个公共框架

显然,X11出了问题。

因为cron作业的环境非常有限。您至少需要设置
显示
。谢谢你,伙计,但是你给了我一个链接到我自己在服务器上的帖子,你的帖子有一个很好的答案。不应该关闭。我会在那里更新答案,这样就不需要在这里保留克隆了。