【问题标题】:Java Swing programs not running in ubuntuJava Swing 程序未在 ubuntu 中运行
【发布时间】:2016-06-14 09:20:58
【问题描述】:

我尝试在 ubuntu 16.04 中执行一个 java swing 程序,它在默认用户下运行良好,但是当我更改用户时它无法运行并显示以下错误。

    No protocol specified
Exception in thread "main" java.awt.AWTError: Can't connect to X11 window server using ':0' as the value of the DISPLAY variable.
    at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method)
    at sun.awt.X11GraphicsEnvironment.access$200(X11GraphicsEnvironment.java:65)
    at sun.awt.X11GraphicsEnvironment$1.run(X11GraphicsEnvironment.java:115)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.awt.X11GraphicsEnvironment.<clinit>(X11GraphicsEnvironment.java:74)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:264)
    at java.awt.GraphicsEnvironment.createGE(GraphicsEnvironment.java:103)
    at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:82)
    at java.awt.Window.initGC(Window.java:475)
    at java.awt.Window.init(Window.java:495)
    at java.awt.Window.<init>(Window.java:537)
    at java.awt.Frame.<init>(Frame.java:420)
    at java.awt.Frame.<init>(Frame.java:385)
    at javax.swing.JFrame.<init>(JFrame.java:189)
    at ImageButton.<init>(ImageButton.java:6)
    at ImageButton.main(ImageButton.java:23)

谁能帮帮我。

【问题讨论】:

  • 是的,我已经看到了,但这并没有解决我的问题。
  • 您是否还看到了另一个建议设置无头标志的答案?
  • 是的,我试过了,它给出了以下异常: java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:1 73) 处的线程“main”java.awt.He adlessException 中的异常跨度>
  • 其他用户是“root”,还是一般其他用户?

标签: java swing ubuntu


【解决方案1】:

如果java awt进程的用户不是你(登录到桌面),它可能无法通过xauth。 尝试通过以下方式将您的 .Xauthority 分享给该用户:

export XAUTHORITY=/home/<you>/.Xauthority

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多