线程“main”java.awt.AWTError中的异常:无法使用“0.0”作为DISPLAY变量的值连接到X11窗口服务器

Exception in thread "main" java.awt.AWTError: Can't connect to X11 window server using '0.0' as the value of the DISPLAY variable

提问人:Ethan 提问时间:11/16/2023 最后编辑:Ethan 更新时间:11/16/2023 访问量:62

问:

我正在通过此处找到的教程来构建测试模拟。我正在使用 WSL,因此我将 XMing 用于我的 GUI。当我运行时,我收到此错误:我想要的结果是在运行时 GUI 打开。这是我当前正在使用的教程的页面。trick-dreException in thread "main" java.awt.AWTError: Can't connect to X11 window server using '0.0' as the value of the DISPLAY variable.trick-dre &

我尝试过的解决方案:

  1. sudo trick-dre &没有给我错误,但没有出现 GUI。

  2. unset DISPLAY执行时出现错误Exception in thread "AWT-EventQueue-0" java.lang.ExceptionInInitializerErrortrick-dre

  3. 我使用 -ac 选项运行 Xming:,这会打开 Xming 的物理窗口,但它是空白的,而不是预期的 GUI。Xming -ac

  4. 我确保我的 Windows 防火墙允许 Xming。是的。

  5. 重新启动 WSL 并重新启动 Xming。

  6. 设置为我的 IP 地址而不是“0.0”,这给了我DISPLAY0:0Exception in thread "main" java.awt.AWTError: Can't connect to X11 window server using <ipaddress>:0 as the value of the DISPLAY variable.

  7. 我试过了,但它给了我xhost +xhost: unable to open display "0.0"

  8. 将 设置为 会产生与解决方案 6 相同的错误。DISPLAYlocalhost:0

  9. 我还确保 Xming 正在运行。

  10. 我没有使用远程主机,只是使用本地环境,因此我认为不需要 ssh 转发。

注意:显然我无法进入无头模式,因为我需要 GUI。这些解决方案是我在其他线程上发现的类似问题的十几个相关解决方案的最终结果。

Java Windows-subsystem-for-linux xming

评论


答:

0赞 Jacky Cheng 11/16/2023 #1

您的解决方案 6 描述暗示您使用命令“export DISPLAY=0:0”?

您是否尝试过“export DISPLAY=:0.0”?我认为:0.0是启用UI显示的标准方式。

如果需要向其他用户 su 操作,请确保在 su 之前以登录用户身份执行 “xhost +”。

评论

0赞 Ethan 11/16/2023
是的,我也尝试过 0.0。相同的错误消息。 只是给了我,所以我不能在su之前做xhost +xhost: unable to open display "0.0"
0赞 Jacky Cheng 11/16/2023
对不起,如果我听起来像是在重复自己。但是,您确定键入正确的命令“export DISPLAY=:0.0”,其中包含分号,零,句号,然后是零。我问是因为如果我输入不带分号的命令“export DISPLAY=0.0”,然后执行“xhost +”,我可以复制您的错误消息,所以我只能假设您错过了分号。