Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/402.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java &引用;无X11显示变量";-这是什么意思?_Java_Linux_Variables_X11_Headless - Fatal编程技术网

Java &引用;无X11显示变量";-这是什么意思?

Java &引用;无X11显示变量";-这是什么意思?,java,linux,variables,x11,headless,Java,Linux,Variables,X11,Headless,我正在尝试在我的Linux机器上安装Java应用程序(Slackware) 我收到了以下错误,我不理解 你能告诉我如何解决这个问题吗?多谢各位 以下是我得到的结果:(我看到一些X11显示变量需要设置,但是我应该给它什么值以及如何设置?) ~$java-jargate-5.0-beta1-build3048-installer.jar -错误- java.awt.HeadlessException: 未设置X11显示变量,但此程序执行了需要该变量的操作。 java.awt.HeadlessExce

我正在尝试在我的Linux机器上安装Java应用程序(Slackware)

我收到了以下错误,我不理解

你能告诉我如何解决这个问题吗?多谢各位

以下是我得到的结果:(我看到一些X11显示变量需要设置,但是我应该给它什么值以及如何设置?)

~$java-jargate-5.0-beta1-build3048-installer.jar
-错误-
java.awt.HeadlessException:
未设置X11显示变量,但此程序执行了需要该变量的操作。
java.awt.HeadlessException:
未设置X11显示变量,但此程序执行了需要该变量的操作。
位于java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:159)
在java.awt.Window.(Window.java:407)
在java.awt.Frame.(Frame.java:402)
位于net.sourceforge.mlf.metouia.borders.MetouiaDotsBuf fer.(MetouiaDotsBuffer.java:105)
位于net.sourceforge.mlf.metouia.borders.MetouiaDots.(MetouiaDots.java:66)
位于net.sourceforge.mlf.metouia.borders.MetouiaToolBar Border。(MetouiaToolBarBorder.java:49)
位于net.sourceforge.mlf.metouia.metouilookandfeel.ini的tComponentDefaults组件(metouilookandfeel.java:241)
位于javax.swing.plaf.basic.BasicLookAndFeel.getdefaults(BasicLookAndFeel.java:130)
位于javax.swing.plaf.metal.MetalLookAndFeel.getdefaults(MetalLookAndFeel.java:1591)
位于javax.swing.UIManager.setLookAndFeel(UIManager.java:537)
位于javax.swing.UIManager.setLookAndFeel(UIManager.java:581)
在com.izforge.izpack.installer.GUIInstaller.loadLook和feel上(GUIInstaller.java:373)
位于com.izforge.izpack.installer.GUIInstaller.(G UIInstaller.java:116)
在sun.reflect.NativeConstructorAccessorImpl.newinstance0(本机方法)
在sun.reflect.NativeConstructorAccessorImpl.newinstance(NativeConstructorAccessorImpl.java:39)
在sun.reflect.DelegatingConstructorAccessorImpl.newI实例(DelegatingConstructorAccessorImpl.java:27)
位于java.lang.reflect.Constructor.newInstance(Constructor.java:513)
位于java.lang.Class.newInstance0(Class.java:355)
位于java.lang.Class.newInstance(Class.java:30
位于com.izforge.izpack.installer.installer.main(Instal.java:62)

如果您在主显示屏上,则

export DISPLAY=:0.0
或者如果您正在使用csh或tcsh

setenv DISPLAY :0.0
在运行应用程序之前

事实上,我很惊讶它不是自动设置的。您是否尝试从非图形终端启动此应用程序?如果不是,您是否修改了默认的.profile、.login、.bashrc或.cshrc

请注意,将DISPLAY设置为:0.0预先假定您正坐在主显示器上,如我所说,或者至少主显示器已登录到您的用户id。如果未登录,或者是其他用户id,则此操作将失败


如果您来自另一台机器,并且您在该机器的主显示器上,并且它正在运行X,那么您可以使用“ssh-X hostname”连接到该主机,ssh将把X显示转发回来。ssh还将确保正确设置显示环境变量在“ssh-X”会话中,DISPLAY环境变量的值类似于“localhost:11.0”,它将指向ssh正在通过隧道传输到本地设备的套接字。

您是否在X11环境中运行此操作?您可以使用终端窗口,但它必须位于X内(在图形登录后,或通过运行startx)

如果您已经在图形环境中,请尝试将export DISPLAY=:0用于类似bash的shell(bash、sh等)或setenv DISPLAY:0用于基于C shell的shell(csh、tcsh等)


如果您通过SSH从另一台机器连接,则可以使用-X选项在您所在的机器上显示图形界面(前提是有一台X服务器在那里运行(例如windows的xming和您的标准Linux X服务器)。

不要忘记在“主页”上执行“主机+”显示机器,当您使用ssh连接到正在执行“ssh-x hostname”操作的机器时,我在Ubuntu 14.04.01中遇到了同样的问题,当时我试图安装JDK 8和Netbeans,如果我在Byobu终端中启动脚本(可能与屏幕上的情况相同)

只需退出Byobu并(在图形终端中)运行脚本。

初始检查

1) 将显示导出到其他计算机时,请确保在该计算机上输入了命令
xhost+
。此命令允许其他计算机在此计算机上导出其显示。可能存在安全限制,请了解。需要检查
ssh-X MachineIP
将不需要
xhost+

2) 有些时候,
JCONSOLE
不会显示其所有进程,因为这些JVM进程可能与不同的用户一起运行,而您正与另一个用户一起导出显示。因此,最好遵循
CD_DIR>sudo./JCONSOLE

3) 在WAS(WEBSPHERE);jconsole将无法连接其java服务器进程,此时只需转到链接,然后尝试连接它。这对我有用。可能是此页面正在初始化一些变量,以使jconsole能够连接到该服务器

WAS控制台>应用程序服务器>服务器1>进程定义>Java虚拟机


我在AIX(其中只有命令行界面可用,没有显示UI)机器上也遇到了同样的问题。我通过安装解决了这个问题

适用于Windows的NX客户端

步骤1:通过那台Windows机器,我连接到了可以使用GUI控制台的unix box。
步骤2:从该UNIX设备SSH到AIX设备。
步骤3:将显示设置为“export DISPLAY=UNIXMACHINE:nxclientportconnectedmentontitle”
第四步:现在如果我们启动任何需要显示的程序;它将在此UNIX设备上启动。

VNC

如果您在UNIX设备上安装了VNC,并且有显示器;那么就不需要Windows和NX客户端了。 步骤1:使用VNC连接到有GUI控制台的Unix box。
步骤2:S
setenv DISPLAY :0.0
export DISPLAY=10.75.75.75:0.0