SceneMaker / VisualSceneMaker

Visual SceneMaker is an authoring tool for creating interactive presentations aimed to non-programming experts. It supports the modeling of verbal and non-verbal behavior of Virtual Characters and robots. Therefore, it provides users with a graphical interface and a simple scripting language that allows them to create rich and compelling content.
http://scenemaker.dfki.de
Other
18 stars 11 forks source link

Plugin properties does not open on windows when building on a Mac: platform-specific JavaFX binaries are not included #262

Open fnunnari opened 2 years ago

fnunnari commented 2 years ago

When building the JAR on a Mac and running the VSM jar on a Windows machine, VSM starts, but when trying to open the Properties panel, I get the following error:

C:\Users\MindBot\Documents\MindBot>java -jar VisualSceneMaker-4.0.2-charamel-ws-rc4.jar
Aug 09, 2022 11:27:20 AM com.sun.javafx.application.PlatformImpl startup
WARNING: Unsupported JavaFX configuration: classes were loaded from 'unnamed module @f456018'
Graphics Device initialization failed for :  d3d, sw
Error initializing QuantumRenderer: no suitable pipeline found
java.lang.RuntimeException: java.lang.RuntimeException: Error initializing QuantumRenderer: no suitable pipeline found
        at com.sun.javafx.tk.quantum.QuantumRenderer.getInstance(QuantumRenderer.java:280)
        at com.sun.javafx.tk.quantum.QuantumToolkit.init(QuantumToolkit.java:244)
        at com.sun.javafx.tk.Toolkit.getToolkit(Toolkit.java:261)
        at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:286)
        at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:160)
        at javafx.embed.swing.JFXPanel.lambda$initFx$1(JFXPanel.java:224)
        at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.lang.RuntimeException: Error initializing QuantumRenderer: no suitable pipeline found
        at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(QuantumRenderer.java:94)
        at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:124)
        ... 1 more
Exception in thread "AWT-EventQueue-0" java.lang.RuntimeException: No toolkit found
        at com.sun.javafx.tk.Toolkit.getToolkit(Toolkit.java:273)
        at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:286)
        at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:160)
        at javafx.embed.swing.JFXPanel.lambda$initFx$1(JFXPanel.java:224)
        at java.base/java.lang.Thread.run(Thread.java:834)

However, executing on a Mac gives no problems.

It looks like the Properties windows uses JavaFX (why?) and when building on an architecture only the binaries of that architecture are included in the JAR.

It seems that two interventions are needed:

chiragbhuvaneshwara commented 2 years ago

This also affects the VSM releases posted on GitHub at this link. As a short-term fix, we should consider adding a suffix to specify the platform for the JAR files in the releases.