5

背景/上下文:

我目前正在开发一个旨在在 Linux 上运行的触摸屏应用程序。作为开发框架,我选择了 JavaFX (jdk1.7.0_10),因为它易于快速原型设计。我正在使用 Arch Linux (kernel 3.6.10-1-ARCH) 发行版,由于 JavaFX 需要一个完整的环境来运行,所以我在基本配置之上安装了 Xorg。即使我能够运行我的 JavaFX 应用程序,我的应用程序中显示的弹出窗口也存在一些问题。

尝试显示这些弹出窗口时,有时它们没有按预期响应或更糟的情况,它们使我的应用程序崩溃。我得到的错误如下:

The program 'java' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadDrawable (invalid Pixmap or Window parameter)'.
(Details: serial 51101 error_code 9 request_code 62 minor_code 0)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the --sync command line
option to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)

顺便说一句,在 Windows(我的开发机器)上运行相同的应用程序时,一切正常。

我还尝试运行复合管理器('xcompmgr'),因为我也收到了一些警告,例如

Can't create transparent stage, because your screen doesn't support alpha channel. You need to enable XComposite extension.

但它没有帮助。

问题:

为了在 Linux 中顺利运行 JavaFX,我是否遗漏了一些文件或配置,或者是否有人遇到过同样的挑战?由于我主要关心的是性能(由于硬件规格有限),我不想安装功能齐全的 Linux 发行版。我只需要运行我的 JavaFX 应用程序。

4

1 回答 1

3

尝试在软件渲染模式下运行 JavaFX:java -Dprism.order=j2d -jar your.jar

另请注意,您的平台似乎未包含在受支持的列表中:http ://www.oracle.com/technetwork/java/javafx/downloads/supportedconfigurations-1506746.html

于 2012-12-18T22:01:19.150 回答