Skip to content
This repository has been archived by the owner on Jun 24, 2021. It is now read-only.

Do JavaFX app users now need to separately install Microsoft Visual C++ Redistributable? #365

Closed
knaccc opened this issue Jan 29, 2019 · 14 comments

Comments

@knaccc
Copy link

knaccc commented Jan 29, 2019

Please could you clarify: Given this change, does this mean that in the future, JavaFX app developers will need to instruct their users to separately download and install the Microsoft Visual C++ Redistributable?

Or, is there a way to bundle the DLLs with a jlink'd javafx app so the user does not need to do anything?

@kevinrushforth
Copy link
Collaborator

There is nothing that an application needs to do. The Microsoft redistributable DLLs are included in JDK 11. They were removed from the JavaFX to avoid a duplicate file error.

@knaccc
Copy link
Author

knaccc commented Jan 29, 2019

@kevinrushforth When I attempted to run a jlink'd javafx app on Windows 10, it didn't work until I installed the Microsoft Visual C++ Redistributable. As soon as I installed the Redistributable, it worked fine. What could I have done wrong?

This is the jlink line:

$JAVA_HOME/bin/jlink --module-path ${JAVA_HOME_VARIANT}/jmods:import/javafx-jmods/win/javafx-jmods-${JAVAFX_VERSION}:target/modules:target/mymodule.jar:target/myguimodule.jar --add-modules mymodule,myguimodule,javafx.controls,javafx.fxml,java.desktop --output dist/win --strip-debug --compress 2 --no-header-files --no-man-pages

IIRC, the error was to do with not being able to find prism.

@kevinrushforth
Copy link
Collaborator

That should have worked as long as you used JDK 11. Were you using JDK 10 or JDK 11?

@knaccc
Copy link
Author

knaccc commented Jan 29, 2019

@kevinrushforth These are the exact dependencies: https://github.com/knaccc/i2p-zero/blob/master/bin/java-config.sh

So it's latest AdoptOpenJDK 11.0.1 and Gluon openjfx-11.0.2.

(The JavaFX project that has this problem is here: https://github.com/knaccc/i2p-zero)

@knaccc
Copy link
Author

knaccc commented Jan 29, 2019

Btw it's this exact error that I have:

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

#237 (comment)

@knaccc
Copy link
Author

knaccc commented Jan 29, 2019

The javac and jlink lines are here: https://github.com/knaccc/i2p-zero/blob/master/bin/build-launcher.sh

@kevinrushforth
Copy link
Collaborator

Can you provide the output running it with:

java -Djavafx.verbose=true -Dprism.verbose=true ...

I'll reopen this for now.

@kevinrushforth
Copy link
Collaborator

Also, can provide a list of DLLs in the bin directory of the jlinked runtime?

@knaccc
Copy link
Author

knaccc commented Jan 29, 2019

Thanks for your help, @kevinrushforth

I've just run this on a ModernIE Win10 VM with hardly any other software installed.

Here are the DLLs:

01/28/2019  07:53 PM           158,720 javafx_iio.dll
01/28/2019  07:53 PM           264,704 glass.dll
01/28/2019  07:53 PM            11,776 prefs.dll
01/28/2019  07:53 PM            43,008 verify.dll
01/28/2019  07:53 PM            55,808 prism_common.dll
01/28/2019  07:53 PM            46,080 jsound.dll
01/28/2019  07:53 PM            92,672 prism_sw.dll
01/28/2019  07:53 PM           193,024 jli.dll
01/28/2019  07:53 PM           235,520 lcms.dll
01/28/2019  07:53 PM           125,952 prism_d3d.dll
01/28/2019  07:53 PM           509,440 freetype.dll
01/28/2019  07:53 PM            79,360 net.dll
01/28/2019  07:53 PM            53,760 nio.dll
01/28/2019  07:53 PM            81,408 decora_sse.dll
01/28/2019  07:53 PM           963,232 msvcr120.dll
01/28/2019  07:53 PM           156,672 javajpeg.dll
01/28/2019  07:53 PM           141,824 java.dll
01/28/2019  07:53 PM           660,128 msvcp120.dll
01/28/2019  07:53 PM            19,968 jimage.dll
01/28/2019  07:53 PM         1,518,080 awt.dll
01/28/2019  07:53 PM             8,192 jawt.dll
01/28/2019  07:53 PM           419,328 fontmanager.dll
01/28/2019  07:53 PM           498,176 mlib_image.dll
01/28/2019  07:53 PM           202,240 splashscreen.dll
01/28/2019  07:53 PM           136,192 sunec.dll
01/28/2019  07:53 PM            67,072 javafx_font.dll
01/28/2019  07:53 PM            70,656 zip.dll

Here is the verbose output:

JavaFX launchApplication method: launchMode=LM_MODULE
Error: failed to load api-ms-win-core-console-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-console-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-datetime-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-datetime-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-debug-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-debug-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-errorhandling-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-errorhandling-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-file-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-file-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-file-l1-2-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-file-l1-2-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-file-l2-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-file-l2-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-handle-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-handle-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-heap-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-heap-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-interlocked-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-interlocked-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-libraryloader-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-libraryloader-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-localization-l1-2-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-localization-l1-2-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-memory-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-memory-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-namedpipe-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-namedpipe-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-processenvironment-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-processenvironment-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-processthreads-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-processthreads-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-processthreads-l1-1-1.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-processthreads-l1-1-1 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-profile-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-profile-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-rtlsupport-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-rtlsupport-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-string-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-string-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-synch-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-synch-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-synch-l1-2-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-synch-l1-2-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-sysinfo-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-sysinfo-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-timezone-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-timezone-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-core-util-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-core-util-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-crt-conio-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-conio-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-crt-convert-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-convert-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-crt-environment-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-environment-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-crt-filesystem-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-filesystem-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-crt-heap-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-heap-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-crt-locale-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-locale-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-crt-math-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-math-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-crt-multibyte-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-multibyte-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-crt-private-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-private-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-crt-process-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-process-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-crt-runtime-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-runtime-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-crt-stdio-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-stdio-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-crt-string-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-string-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-crt-time-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-time-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load api-ms-win-crt-utility-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-utility-l1-1-0 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Loaded C:\Windows\system32\ucrtbase.dll from java.library.path
Error: failed to load vcruntime140.dll : java.lang.UnsatisfiedLinkError: no vcruntime140 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load msvcp140.dll : java.lang.UnsatisfiedLinkError: no msvcp140 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Error: failed to load concrt140.dll : java.lang.UnsatisfiedLinkError: no concrt140 in java.library.path: [Z:\dist8\win-gui\router\bin, C:\Windows\Sun\Java\bin, C:\Windows\system32, C:\Windows, C:\Program Files (x86)\Common Files\Oracle\Java\javapath, C:\Program Files (x86)\Parallels\Parallels Tools\Applications, C:\Windows\system32, C:\Windows, C:\Windows\System32\Wbem, C:\Windows\System32\WindowsPowerShell\v1.0\, C:\ProgramData\chocolatey\bin, C:\Program Files\Puppet Labs\Puppet\bin, C:\Program Files\OpenSSH\bin, C:\Users\IEUser\AppData\Local\Microsoft\WindowsApps, ., .]
Prism pipeline init order: d3d sw
Using Double Precision Marlin Rasterizer
Using dirty region optimizations
Not using texture mask for primitives
Not forcing power of 2 sizes for textures
Using hardware CLAMP_TO_ZERO mode
Opting in for HiDPI pixel scaling
Prism pipeline name = com.sun.prism.d3d.D3DPipeline
Loading D3D native library ...
GraphicsPipeline.createPipeline failed for com.sun.prism.d3d.D3DPipeline
java.lang.UnsatisfiedLinkError: Z:\dist8\win-gui\router\bin\prism_d3d.dll: Can't find dependent libraries
        at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method)
        at java.base/java.lang.ClassLoader$NativeLibrary.load(Unknown Source)
        at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(Unknown Source)
        at java.base/java.lang.ClassLoader.loadLibrary0(Unknown Source)
        at java.base/java.lang.ClassLoader.loadLibrary(Unknown Source)
        at java.base/java.lang.Runtime.loadLibrary0(Unknown Source)
        at java.base/java.lang.System.loadLibrary(Unknown Source)
        at javafx.graphics/com.sun.glass.utils.NativeLibLoader.loadLibraryInternal(Unknown Source)
        at javafx.graphics/com.sun.glass.utils.NativeLibLoader.loadLibrary(Unknown Source)
        at javafx.graphics/com.sun.prism.d3d.D3DPipeline.lambda$static$0(Unknown Source)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at javafx.graphics/com.sun.prism.d3d.D3DPipeline.<clinit>(Unknown Source)
        at java.base/java.lang.Class.forName0(Native Method)
        at java.base/java.lang.Class.forName(Unknown Source)
        at javafx.graphics/com.sun.prism.GraphicsPipeline.createPipeline(Unknown Source)
        at javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(Unknown Source)
        at javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(Unknown Source)
        at java.base/java.lang.Thread.run(Unknown Source)
*** Fallback to Prism SW pipeline
Prism pipeline name = com.sun.prism.sw.SWPipeline
GraphicsPipeline.createPipeline failed for com.sun.prism.sw.SWPipeline
java.lang.UnsatisfiedLinkError: Z:\dist8\win-gui\router\bin\prism_sw.dll: Can't find dependent libraries
        at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method)
        at java.base/java.lang.ClassLoader$NativeLibrary.load(Unknown Source)
        at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(Unknown Source)
        at java.base/java.lang.ClassLoader.loadLibrary0(Unknown Source)
        at java.base/java.lang.ClassLoader.loadLibrary(Unknown Source)
        at java.base/java.lang.Runtime.loadLibrary0(Unknown Source)
        at java.base/java.lang.System.loadLibrary(Unknown Source)
        at javafx.graphics/com.sun.glass.utils.NativeLibLoader.loadLibraryInternal(Unknown Source)
        at javafx.graphics/com.sun.glass.utils.NativeLibLoader.loadLibrary(Unknown Source)
        at javafx.graphics/com.sun.prism.sw.SWPipeline.lambda$static$0(Unknown Source)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at javafx.graphics/com.sun.prism.sw.SWPipeline.<clinit>(Unknown Source)
        at java.base/java.lang.Class.forName0(Native Method)
        at java.base/java.lang.Class.forName(Unknown Source)
        at javafx.graphics/com.sun.prism.GraphicsPipeline.createPipeline(Unknown Source)
        at javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(Unknown Source)
        at javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(Unknown Source)
        at java.base/java.lang.Thread.run(Unknown Source)
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 javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer.getInstance(Unknown Source)
        at javafx.graphics/com.sun.javafx.tk.quantum.QuantumToolkit.init(Unknown Source)
        at javafx.graphics/com.sun.javafx.tk.Toolkit.getToolkit(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.startup(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.startup(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.startToolkit(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication(Unknown Source)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.base/java.lang.reflect.Method.invoke(Unknown Source)
        at java.base/sun.launcher.LauncherHelper$FXHelper.main(Unknown Source)
Caused by: java.lang.RuntimeException: Error initializing QuantumRenderer: no suitable pipeline found
        at javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(Unknown Source)
        at javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(Unknown Source)
        at java.base/java.lang.Thread.run(Unknown Source)
Exception in thread "main" java.lang.reflect.InvocationTargetException
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.base/java.lang.reflect.Method.invoke(Unknown Source)
        at java.base/sun.launcher.LauncherHelper$FXHelper.main(Unknown Source)
Caused by: java.lang.RuntimeException: No toolkit found
        at javafx.graphics/com.sun.javafx.tk.Toolkit.getToolkit(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.startup(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.startup(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.startToolkit(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication(Unknown Source)
        ... 5 more

@knaccc
Copy link
Author

knaccc commented Jan 29, 2019

Btw I noticed that Windows does have api-ms-win-core-console-l1-1-0.dll in the C:\Windows\System32\downlevel dir. Therefore I fixed some of the errors by adding: -Djava.library.path=C:\Windows\System32\downlevel

However, it then fails when looking for api-ms-win-crt-conio-l1-1-0.dll, which I don't appear to have in my Windows installation.

The new verbose output is:

JavaFX launchApplication method: launchMode=LM_MODULE
Loaded C:\Windows\System32\downlevel\api-ms-win-core-console-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-datetime-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-debug-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-errorhandling-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-file-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-file-l1-2-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-file-l2-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-handle-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-heap-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-interlocked-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-libraryloader-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-localization-l1-2-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-memory-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-namedpipe-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-processenvironment-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-processthreads-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-processthreads-l1-1-1.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-profile-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-rtlsupport-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-string-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-synch-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-synch-l1-2-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-sysinfo-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-timezone-l1-1-0.dll from java.library.path
Loaded C:\Windows\System32\downlevel\api-ms-win-core-util-l1-1-0.dll from java.library.path
Error: failed to load api-ms-win-crt-conio-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-conio-l1-1-0 in java.library.path: [C:\Windows\System32\downlevel]
Error: failed to load api-ms-win-crt-convert-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-convert-l1-1-0 in java.library.path: [C:\Windows\System32\downlevel]
Error: failed to load api-ms-win-crt-environment-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-environment-l1-1-0 in java.library.path: [C:\Windows\System32\downlevel]
Error: failed to load api-ms-win-crt-filesystem-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-filesystem-l1-1-0 in java.library.path: [C:\Windows\System32\downlevel]
Error: failed to load api-ms-win-crt-heap-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-heap-l1-1-0 in java.library.path: [C:\Windows\System32\downlevel]
Error: failed to load api-ms-win-crt-locale-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-locale-l1-1-0 in java.library.path: [C:\Windows\System32\downlevel]
Error: failed to load api-ms-win-crt-math-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-math-l1-1-0 in java.library.path: [C:\Windows\System32\downlevel]
Error: failed to load api-ms-win-crt-multibyte-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-multibyte-l1-1-0 in java.library.path: [C:\Windows\System32\downlevel]
Error: failed to load api-ms-win-crt-private-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-private-l1-1-0 in java.library.path: [C:\Windows\System32\downlevel]
Error: failed to load api-ms-win-crt-process-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-process-l1-1-0 in java.library.path: [C:\Windows\System32\downlevel]
Error: failed to load api-ms-win-crt-runtime-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-runtime-l1-1-0 in java.library.path: [C:\Windows\System32\downlevel]
Error: failed to load api-ms-win-crt-stdio-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-stdio-l1-1-0 in java.library.path: [C:\Windows\System32\downlevel]
Error: failed to load api-ms-win-crt-string-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-string-l1-1-0 in java.library.path: [C:\Windows\System32\downlevel]
Error: failed to load api-ms-win-crt-time-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-time-l1-1-0 in java.library.path: [C:\Windows\System32\downlevel]
Error: failed to load api-ms-win-crt-utility-l1-1-0.dll : java.lang.UnsatisfiedLinkError: no api-ms-win-crt-utility-l1-1-0 in java.library.path: [C:\Windows\System32\downlevel]
Error: failed to load ucrtbase.dll : java.lang.UnsatisfiedLinkError: no ucrtbase in java.library.path: [C:\Windows\System32\downlevel]
Error: failed to load vcruntime140.dll : java.lang.UnsatisfiedLinkError: no vcruntime140 in java.library.path: [C:\Windows\System32\downlevel]
Error: failed to load msvcp140.dll : java.lang.UnsatisfiedLinkError: no msvcp140 in java.library.path: [C:\Windows\System32\downlevel]
Error: failed to load concrt140.dll : java.lang.UnsatisfiedLinkError: no concrt140 in java.library.path: [C:\Windows\System32\downlevel]
Prism pipeline init order: d3d sw
Using Double Precision Marlin Rasterizer
Using dirty region optimizations
Not using texture mask for primitives
Not forcing power of 2 sizes for textures
Using hardware CLAMP_TO_ZERO mode
Opting in for HiDPI pixel scaling
Prism pipeline name = com.sun.prism.d3d.D3DPipeline
Loading D3D native library ...
GraphicsPipeline.createPipeline failed for com.sun.prism.d3d.D3DPipeline
java.lang.UnsatisfiedLinkError: Z:\dist8\win-gui\router\bin\prism_d3d.dll: Can't find dependent libraries
        at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method)
        at java.base/java.lang.ClassLoader$NativeLibrary.load(Unknown Source)
        at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(Unknown Source)
        at java.base/java.lang.ClassLoader.loadLibrary0(Unknown Source)
        at java.base/java.lang.ClassLoader.loadLibrary(Unknown Source)
        at java.base/java.lang.Runtime.loadLibrary0(Unknown Source)
        at java.base/java.lang.System.loadLibrary(Unknown Source)
        at javafx.graphics/com.sun.glass.utils.NativeLibLoader.loadLibraryInternal(Unknown Source)
        at javafx.graphics/com.sun.glass.utils.NativeLibLoader.loadLibrary(Unknown Source)
        at javafx.graphics/com.sun.prism.d3d.D3DPipeline.lambda$static$0(Unknown Source)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at javafx.graphics/com.sun.prism.d3d.D3DPipeline.<clinit>(Unknown Source)
        at java.base/java.lang.Class.forName0(Native Method)
        at java.base/java.lang.Class.forName(Unknown Source)
        at javafx.graphics/com.sun.prism.GraphicsPipeline.createPipeline(Unknown Source)
        at javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(Unknown Source)
        at javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(Unknown Source)
        at java.base/java.lang.Thread.run(Unknown Source)
*** Fallback to Prism SW pipeline
Prism pipeline name = com.sun.prism.sw.SWPipeline
GraphicsPipeline.createPipeline failed for com.sun.prism.sw.SWPipeline
java.lang.UnsatisfiedLinkError: Z:\dist8\win-gui\router\bin\prism_sw.dll: Can't find dependent libraries
        at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method)
        at java.base/java.lang.ClassLoader$NativeLibrary.load(Unknown Source)
        at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(Unknown Source)
        at java.base/java.lang.ClassLoader.loadLibrary0(Unknown Source)
        at java.base/java.lang.ClassLoader.loadLibrary(Unknown Source)
        at java.base/java.lang.Runtime.loadLibrary0(Unknown Source)
        at java.base/java.lang.System.loadLibrary(Unknown Source)
        at javafx.graphics/com.sun.glass.utils.NativeLibLoader.loadLibraryInternal(Unknown Source)
        at javafx.graphics/com.sun.glass.utils.NativeLibLoader.loadLibrary(Unknown Source)
        at javafx.graphics/com.sun.prism.sw.SWPipeline.lambda$static$0(Unknown Source)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at javafx.graphics/com.sun.prism.sw.SWPipeline.<clinit>(Unknown Source)
        at java.base/java.lang.Class.forName0(Native Method)
        at java.base/java.lang.Class.forName(Unknown Source)
        at javafx.graphics/com.sun.prism.GraphicsPipeline.createPipeline(Unknown Source)
        at javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(Unknown Source)
        at javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(Unknown Source)
        at java.base/java.lang.Thread.run(Unknown Source)
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 javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer.getInstance(Unknown Source)
        at javafx.graphics/com.sun.javafx.tk.quantum.QuantumToolkit.init(Unknown Source)
        at javafx.graphics/com.sun.javafx.tk.Toolkit.getToolkit(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.startup(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.startup(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.startToolkit(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication(Unknown Source)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.base/java.lang.reflect.Method.invoke(Unknown Source)
        at java.base/sun.launcher.LauncherHelper$FXHelper.main(Unknown Source)
Caused by: java.lang.RuntimeException: Error initializing QuantumRenderer: no suitable pipeline found
        at javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(Unknown Source)
        at javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(Unknown Source)
        at java.base/java.lang.Thread.run(Unknown Source)
Exception in thread "main" java.lang.reflect.InvocationTargetException
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.base/java.lang.reflect.Method.invoke(Unknown Source)
        at java.base/sun.launcher.LauncherHelper$FXHelper.main(Unknown Source)
Caused by: java.lang.RuntimeException: No toolkit found
        at javafx.graphics/com.sun.javafx.tk.Toolkit.getToolkit(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.startup(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.startup(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.startToolkit(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(Unknown Source)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication(Unknown Source)
        ... 5 more

@kevinrushforth
Copy link
Collaborator

Here are the DLLs:
...

That's the problem. There are no MS DLLs. So either there is a bug in jlink or you are pointing to jmods for java.base that don't include them.

@kevinrushforth
Copy link
Collaborator

One more question. Your jlink command is:

$JAVA_HOME/bin/jlink --module-path ${JAVA_HOME_VARIANT}/jmods:import/javafx-jmods/win/javafx-jmods-${JAVAFX_VERSION}:target/modules:target/mymodule.jar:target/myguimodule.jar --add-modules mymodule,myguimodule,javafx.controls,javafx.fxml,java.desktop --output dist/win --strip-debug --compress 2 --no-header-files --no-man-pages

Can you check the java.base.jmod in ${JAVA_HOME_VARIANT}/jmods and verify that it is from JDK 11.x and contains the Microsoft DLLs?

@knaccc
Copy link
Author

knaccc commented Jan 29, 2019

Aha, ok I think you've solved it. I've just downloaded OpenJDK11 from https://jdk.java.net/11/ and compared the DLLs to AdoptOpenJDK 11.

Looks like AdoptOpenJDK was the problem. Sorry to have bothered you with this.

Do you happen to know what the licenses are on these DLLs? Because of e.g. strong crypto export rules, we were advised to use the AdoptOpenJDK instead of the jdk.java.net server.

From AdoptOpenJDK 11:

find . -name "*.dll"
./bin/java.dll
./bin/dt_shmem.dll
./bin/sunec.dll
./bin/awt.dll
./bin/freetype.dll
./bin/javaaccessbridge.dll
./bin/instrument.dll
./bin/management_ext.dll
./bin/splashscreen.dll
./bin/fontmanager.dll
./bin/dt_socket.dll
./bin/jawt.dll
./bin/msvcr120.dll
./bin/windowsaccessbridge-64.dll
./bin/rmi.dll
./bin/jimage.dll
./bin/zip.dll
./bin/jsound.dll
./bin/sunmscapi.dll
./bin/msvcp120.dll
./bin/management_agent.dll
./bin/mlib_image.dll
./bin/javajpeg.dll
./bin/prefs.dll
./bin/nio.dll
./bin/j2pcsc.dll
./bin/jaas.dll
./bin/management.dll
./bin/j2gss.dll
./bin/j2pkcs11.dll
./bin/server/jvm.dll
./bin/saproc.dll
./bin/jli.dll
./bin/w2k_lsa_auth.dll
./bin/unpack.dll
./bin/lcms.dll
./bin/verify.dll
./bin/le.dll
./bin/net.dll
./bin/jdwp.dll
./bin/attach.dll

From https://jdk.java.net/11/

find . -name "*.dll"
./jdk-11.0.2/bin/api-ms-win-crt-time-l1-1-0.dll
./jdk-11.0.2/bin/api-ms-win-crt-filesystem-l1-1-0.dll
./jdk-11.0.2/bin/instrument.dll
./jdk-11.0.2/bin/api-ms-win-crt-utility-l1-1-0.dll
./jdk-11.0.2/bin/vcruntime140.dll
./jdk-11.0.2/bin/api-ms-win-core-console-l1-1-0.dll
./jdk-11.0.2/bin/prefs.dll
./jdk-11.0.2/bin/api-ms-win-core-processenvironment-l1-1-0.dll
./jdk-11.0.2/bin/j2pcsc.dll
./jdk-11.0.2/bin/verify.dll
./jdk-11.0.2/bin/jsound.dll
./jdk-11.0.2/bin/ucrtbase.dll
./jdk-11.0.2/bin/api-ms-win-core-file-l1-1-0.dll
./jdk-11.0.2/bin/w2k_lsa_auth.dll
./jdk-11.0.2/bin/jli.dll
./jdk-11.0.2/bin/api-ms-win-core-errorhandling-l1-1-0.dll
./jdk-11.0.2/bin/lcms.dll
./jdk-11.0.2/bin/javaaccessbridge.dll
./jdk-11.0.2/bin/api-ms-win-crt-process-l1-1-0.dll
./jdk-11.0.2/bin/saproc.dll
./jdk-11.0.2/bin/api-ms-win-core-heap-l1-1-0.dll
./jdk-11.0.2/bin/rmi.dll
./jdk-11.0.2/bin/api-ms-win-core-processthreads-l1-1-1.dll
./jdk-11.0.2/bin/freetype.dll
./jdk-11.0.2/bin/api-ms-win-core-processthreads-l1-1-0.dll
./jdk-11.0.2/bin/api-ms-win-crt-convert-l1-1-0.dll
./jdk-11.0.2/bin/api-ms-win-crt-private-l1-1-0.dll
./jdk-11.0.2/bin/api-ms-win-core-file-l2-1-0.dll
./jdk-11.0.2/bin/net.dll
./jdk-11.0.2/bin/api-ms-win-core-debug-l1-1-0.dll
./jdk-11.0.2/bin/jaas.dll
./jdk-11.0.2/bin/attach.dll
./jdk-11.0.2/bin/api-ms-win-crt-stdio-l1-1-0.dll
./jdk-11.0.2/bin/server/jvm.dll
./jdk-11.0.2/bin/api-ms-win-core-localization-l1-2-0.dll
./jdk-11.0.2/bin/api-ms-win-core-datetime-l1-1-0.dll
./jdk-11.0.2/bin/j2pkcs11.dll
./jdk-11.0.2/bin/api-ms-win-crt-math-l1-1-0.dll
./jdk-11.0.2/bin/management_agent.dll
./jdk-11.0.2/bin/api-ms-win-core-file-l1-2-0.dll
./jdk-11.0.2/bin/api-ms-win-core-timezone-l1-1-0.dll
./jdk-11.0.2/bin/nio.dll
./jdk-11.0.2/bin/unpack.dll
./jdk-11.0.2/bin/api-ms-win-core-rtlsupport-l1-1-0.dll
./jdk-11.0.2/bin/api-ms-win-core-handle-l1-1-0.dll
./jdk-11.0.2/bin/dt_socket.dll
./jdk-11.0.2/bin/api-ms-win-core-synch-l1-1-0.dll
./jdk-11.0.2/bin/api-ms-win-core-string-l1-1-0.dll
./jdk-11.0.2/bin/javajpeg.dll
./jdk-11.0.2/bin/java.dll
./jdk-11.0.2/bin/jimage.dll
./jdk-11.0.2/bin/api-ms-win-core-interlocked-l1-1-0.dll
./jdk-11.0.2/bin/awt.dll
./jdk-11.0.2/bin/api-ms-win-core-memory-l1-1-0.dll
./jdk-11.0.2/bin/jawt.dll
./jdk-11.0.2/bin/api-ms-win-core-util-l1-1-0.dll
./jdk-11.0.2/bin/management.dll
./jdk-11.0.2/bin/api-ms-win-core-namedpipe-l1-1-0.dll
./jdk-11.0.2/bin/fontmanager.dll
./jdk-11.0.2/bin/mlib_image.dll
./jdk-11.0.2/bin/splashscreen.dll
./jdk-11.0.2/bin/sunmscapi.dll
./jdk-11.0.2/bin/api-ms-win-crt-conio-l1-1-0.dll
./jdk-11.0.2/bin/dt_shmem.dll
./jdk-11.0.2/bin/api-ms-win-crt-runtime-l1-1-0.dll
./jdk-11.0.2/bin/api-ms-win-crt-string-l1-1-0.dll
./jdk-11.0.2/bin/api-ms-win-crt-multibyte-l1-1-0.dll
./jdk-11.0.2/bin/api-ms-win-core-synch-l1-2-0.dll
./jdk-11.0.2/bin/api-ms-win-core-profile-l1-1-0.dll
./jdk-11.0.2/bin/api-ms-win-crt-locale-l1-1-0.dll
./jdk-11.0.2/bin/sunec.dll
./jdk-11.0.2/bin/api-ms-win-crt-heap-l1-1-0.dll
./jdk-11.0.2/bin/api-ms-win-core-sysinfo-l1-1-0.dll
./jdk-11.0.2/bin/jdwp.dll
./jdk-11.0.2/bin/windowsaccessbridge-64.dll
./jdk-11.0.2/bin/api-ms-win-core-libraryloader-l1-1-0.dll
./jdk-11.0.2/bin/api-ms-win-crt-environment-l1-1-0.dll
./jdk-11.0.2/bin/msvcp140.dll
./jdk-11.0.2/bin/zip.dll
./jdk-11.0.2/bin/j2gss.dll
./jdk-11.0.2/bin/le.dll
./jdk-11.0.2/bin/management_ext.dll

@kevinrushforth
Copy link
Collaborator

Looks like AdoptOpenJDK was the problem.

OK, I'll close this.

Do you happen to know what the licenses are on these DLLs?

You would need to check with Microsoft.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants