I have a JavaFX app that works fine on desktop. I'm trying to "port" it to Raspberry Pi. I use the following command to run it:
mvn -s "/full_path/maven.xml" -Djavafx.platform=linux-arm32-monocle -Dglass.platform=monocle -Djavafx.cachedir=/full_path/cache -Dprism.order=sw javafx:run
It dies with the following error:
Loading library glass from resource failed: java.lang.UnsatisfiedLinkError: /full_path/cache/libglass.so: /full_path/cache/libglass.so: undefined symbol: g_direct_hash java.lang.UnsatisfiedLinkError: /full_path/cache/libglass.so: /full_path/cache/libglass.so: undefined symbol: g_direct_hash
...plus many many lines of stack trace...
Looking into /full_path/cache, I can see that libglass.so is downloaded. And, to my surprise, peeking into it shows that g_direct_hash is also there.
I have tried all kinds of variations of javafx.platform and glass.platform, but to no avail.
Any help would be greatly appreciated.
UPDATE:
Seems that this was caused by some kind of version mismatch. I solved it by manually downloading JavaFX instead of letting Maven get it. Had to update JavaFX dependencies in pom.xml to point to the local dir. Not nice but works.