You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
(Note "-Full" suffix means it has JavaFX baked in)
Tried with javafxStaticSdkVersion versions 17, 19 and 20 with the same results.
Compiles without errors.
When started using gluonfx:nativerun it starts and fails with:
[Sat [removed date+time][[INFO] [SUB] [removed time] [main] WARN hellofx.HelloFX - random log text to check if it's starting at all
[Sat [removed date+time]][INFO] [SUB] WARNING: Unsupported JavaFX configuration: classes were loaded from 'unnamed module @6b71769e'
[Sat [removed date+time]][FINE] Result for run until end: -1073741819
[Sat [removed date+time]][SEVERE] Process run until end failed with result: -1073741819
Note -1073741819 is 0xc0000005 = access violation
(Suggestion - why not print it in hex?)
According to report.wer file in
c:\ProgramData\Microsoft\Windows\WER\ReportArchive\AppCrash_HelloFX.exe_[hex digits]
it tries to load
LoadedModule[47]=C:\Program Files\BellSoft\LibericaJDK-17-Full\bin\prism_d3d.dll
LoadedModule[63]=C:\Program Files\BellSoft\LibericaJDK-17-Full\bin\glass.dll
(The rest are from C:\Windows... )
Which it obviously shouln't?
Glass.lib is linked statically, isn't it, so why should it look for glass.dll at all?
Now trying to open a command prompt where hellofx.exe is.
Running hellofx.exe:
No output, crashes immidiately
Same command prompt, running "set path=", running hello.exe
Starts as intended - shows a window with Duke and Java version
Running "set path=%java_home%\bin" - so only Liberica-17-Full is in it, running hello.exe again
Again no output, crashes immidiately
Obviously, having to modify / check PATH for existing Java installations defeats the purpose of having a self-contained exe. For an "average user" it would be a very big problem, especially if they already have some non-native Java software installed.
The text was updated successfully, but these errors were encountered:
Thanks, adding
System.setProperty("java.library.path", "runtime\bin;runtime\lib");
near the start of main() helped, it's working as intended now.
Obviously a more complete workaround could check which directories in "java.library.path" contain "glass.dll" and remove those while preserving the rest.
Compiling HelloFX examples using
JAVA_HOME=C:\Program Files\BellSoft\LibericaJDK-17-Full
GRAALVM_HOME=c:\Program Files\Java\graalvm-svm-java17-windows-gluon-22.1.0.1-Final
PATH=C:\Tools\Path;C:\Program Files\BellSoft\LibericaJDK-17-Full\bin[...]
<javafx.maven.plugin.version>0.0.8</javafx.maven.plugin.version>
<gluonfx.maven.plugin.version>1.0.16</gluonfx.maven.plugin.version>
(Note "-Full" suffix means it has JavaFX baked in)
Tried with javafxStaticSdkVersion versions 17, 19 and 20 with the same results.
Compiles without errors.
When started using gluonfx:nativerun it starts and fails with:
[Sat [removed date+time][[INFO] [SUB] [removed time] [main] WARN hellofx.HelloFX - random log text to check if it's starting at all
[Sat [removed date+time]][INFO] [SUB] WARNING: Unsupported JavaFX configuration: classes were loaded from 'unnamed module @6b71769e'
[Sat [removed date+time]][FINE] Result for run until end: -1073741819
[Sat [removed date+time]][SEVERE] Process run until end failed with result: -1073741819
Note -1073741819 is 0xc0000005 = access violation
(Suggestion - why not print it in hex?)
According to report.wer file in
c:\ProgramData\Microsoft\Windows\WER\ReportArchive\AppCrash_HelloFX.exe_[hex digits]
it tries to load
LoadedModule[47]=C:\Program Files\BellSoft\LibericaJDK-17-Full\bin\prism_d3d.dll
LoadedModule[63]=C:\Program Files\BellSoft\LibericaJDK-17-Full\bin\glass.dll
(The rest are from C:\Windows... )
Which it obviously shouln't?
Glass.lib is linked statically, isn't it, so why should it look for glass.dll at all?
Now trying to open a command prompt where hellofx.exe is.
Running hellofx.exe:
No output, crashes immidiately
Same command prompt, running "set path=", running hello.exe
Starts as intended - shows a window with Duke and Java version
Running "set path=%java_home%\bin" - so only Liberica-17-Full is in it, running hello.exe again
Again no output, crashes immidiately
Obviously, having to modify / check PATH for existing Java installations defeats the purpose of having a self-contained exe. For an "average user" it would be a very big problem, especially if they already have some non-native Java software installed.
The text was updated successfully, but these errors were encountered: