繁体   English   中英

如何在没有桌面环境的情况下从 Linux shell 运行 Java Swing 应用程序?

[英]How to run a Java Swing application from Linux shell without a desktop environment?

我有一个用于测试的示例 Java 应用程序。 它使用 Java Swing 库。 我尝试在 Linux shell 中使用xserver运行它,所以我没有使用桌面环境。

通常,您可以运行例如 Firefox 而不会出现这样的问题:

startx /usr/bin/firefox    

我尝试导出DISPLAY并无头运行应用程序,但它只打印了以下几行中的第一行。

{
    System.out.println("This works");
    JOptionPane.showMessageDialog(null, "This should show up");
}

如果我从命令行运行java -jar app.jar ,我会收到以下错误消息:

Exception in thread "main" java.awt.HeadlessException: No X11 DISPLAY variable was set, but this program performed an operation which requires it.

使用startx java -jar app.jar ,输出为:

Bad command line option "-jar"

这应该是:

startx /usr/bin/java -jar app.jar —-

请参阅https://askubuntu.com/questions/697978/how-to-pass-a-program-and-its-arguments-to-start或 startx 手册页。

编辑:根据@chief654 的回复更新。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM