test SDKs for headless builds
Craig Raw
craigraw at gmail.com
Thu Dec 12 09:51:35 UTC 2024
Hi Johan,
I managed to solve this - I forgot (again) that javafx.graphics.jar does
not contain the native libraries, and you have to repackage the jar to
include them manually. Once I did this, everything worked successfully.
I'm hoping the headless glass platform makes it into the JavaFX 24 release!
Craig
On Thu, Nov 21, 2024 at 2:11 PM Craig Raw <craigraw at gmail.com> wrote:
> Thanks Johan, great to see this moving forward.
>
> I tested the mac-aarch64 and linux-x86_64 SDKs, and had no problems when
> running the application using a Gradle build.
>
> When I jpackaged the application however, I got the following on launch.
> I'm a little uncertain if there was anything else I was doing when this
> worked in April, but I am setting -Dglass.platform=Headless as a JVM arg.
>
> Graphics Device initialization failed for : es2, sw
> Error initializing QuantumRenderer: no suitable pipeline found
> java.lang.RuntimeException: java.lang.RuntimeException: Error initializing
> QuantumRenderer: no suitable pipeline found
> at javafx.graphics at 24-headless/com.sun.javafx.tk.quantum.QuantumRenderer.getInstance(Unknown
> Source)
> at javafx.graphics at 24-headless/com.sun.javafx.tk.quantum.QuantumToolkit.init(Unknown
> Source)
> at javafx.graphics at 24-headless/com.sun.javafx.tk.Toolkit.getToolkit(Unknown
> Source)
> at javafx.graphics at 24-headless/com.sun.javafx.application.PlatformImpl.startup(Unknown
> Source)
> at javafx.graphics at 24-headless/com.sun.javafx.application.PlatformImpl.startup(Unknown
> Source)
> at javafx.graphics at 24-headless/com.sun.javafx.application.LauncherImpl.startToolkit(Unknown
> Source)
> at javafx.graphics at 24-headless/com.sun.javafx.application.LauncherImpl.launchApplication1(Unknown
> Source)
> at javafx.graphics at 24-headless/com.sun.javafx.application.LauncherImpl.lambda$launchApplication$0(Unknown
> Source)
> at java.base/java.lang.Thread.run(Unknown Source)
> Caused by: java.lang.RuntimeException: Error initializing QuantumRenderer:
> no suitable pipeline found
> at javafx.graphics at 24-headless/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(Unknown
> Source)
> at javafx.graphics at 24-headless/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(Unknown
> Source)
> ... 1 more
>
> Craig
>
>
> On Wed, Nov 20, 2024 at 8:59 PM Johan Vos <johan.vos at gluonhq.com> wrote:
>
>> Hi,
>>
>> Now that JDK-8343196 [1] (Add build property to identify experimental
>> builds of JavaFX) is integrated, I added a jfx.experimental.feature.name
>> property in the headless branch of the sandbox [2] and set that to
>> "headless"
>>
>> Based on that commit, we created builds, and the SDKs containing the
>> headless glass platform are available at those urls:
>>
>>
>> https://download2.gluonhq.com/openjfx/forks/johan/headless/openjfx-24+77_headless_linux-aarch64_bin-sdk.zip
>>
>> https://download2.gluonhq.com/openjfx/forks/johan/headless/openjfx-24+77_headless_linux-x86_64_bin-sdk.zip
>>
>> https://download2.gluonhq.com/openjfx/forks/johan/headless/openjfx-24+77_headless_mac-aarch64_bin-sdk.zip
>>
>> https://download2.gluonhq.com/openjfx/forks/johan/headless/openjfx-24+77_headless_mac-x86_64_bin-sdk.zip
>>
>> https://download2.gluonhq.com/openjfx/forks/johan/headless/openjfx-24+77_headless_windows-x86_64_bin-sdk.zip
>>
>> The system property "javafx.version" returns "24-headless" and
>> "javafx.runtime.version" returns "24-headless+844-2024-11-20-125652" on my
>> linux-x86_64.
>>
>> Especially developers who currently use monocle to do headless work are
>> recommended to give those test SDKs a try and to report.
>>
>> Thanks,
>>
>> - Johan
>>
>> [1] https://bugs.openjdk.java.net/browse/JDK-8343196
>> [2] https://github.com/openjdk/jfx-sandbox/commits/johanvos-headless/
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/openjfx-dev/attachments/20241212/e8f59022/attachment.htm>
More information about the openjfx-dev
mailing list