Windows Installation Instructions, All DLL Files Missing

Christopher Miles twitch at nervestaple.com
Mon Apr 20 17:26:54 UTC 2020


I really appreciate all of the helpful comments in this thread! I have 
made a lot of progress on this issue, I can compile and run my 
application and am working on packaging.

In my opinion, my big problem was that when I was compiling I wasn't 
setting the correct flags with `javac` and, at the same time, probably 
didn't have the correct flags for `java` either. To be honest I was 
mostly button mashing at that point in the hopes that I'd stumble across 
the correct combination.

To get everything working I have moved to using the "mods" with `javac` 
and to compile and then using `jlink` build an image. After `jlink` runs 
I am using the `java` that is in the image directory to run the compiled 
"JAR" file and that is working well.

I think one big hurdle here was my lack of familiarity with Java modules 
and how they work. While I knew that Java modules had been a thing for a 
while I've been working on non-Java projects and it was not at the front 
of my mind.

While the examples on the JavaFX "Getting Started" page worked for me, I 
don't think I came away with a clear understanding of what the flags 
where actually doing and that made it a little harder to migrate that 
information over to my own project. My thinking is that using the "mods" 
will make it easier to eventually get my application packaged but I'm 
not entirely clear on the bit about the JavaFX runtime and if I need it 
at all. I don't think a discussion of the Java modules system would be 
appropriate on the "Getting Started" page, but maybe getting a little 
more into the details of which approach makes the most sense (mods vs. 
the SDK) in which situations would clarify some things.

Thank you all for your help on this! :-)

-- 
Miles

Kevin Rushforth wrote on 4/20/2020 11:19:
> That shouldn't be necessary. It's a better workaround than setting the 
> PATH env variable to be sure, but there is some underlying problem that 
> isn't yet understood.
> 
> -- Kevin
> 
> On 4/20/2020 8:13 AM, David Grieve wrote:
>> Set  -Djava.library.path= C:\Program Files\Java\javafx-sdk-14\bin
>>
>> For the jlink question, look at jmod. You'll use jmod to bundle up the 
>> dll's and whatever else you need, then jlink to create the custom 
>> runtime.
>>
>> -----Original Message-----
>> From: openjfx-dev <openjfx-dev-bounces at openjdk.java.net> On Behalf Of 
>> Christopher Miles
>> Sent: Friday, April 17, 2020 2:56 PM
>> To: openjfx-dev at openjdk.java.net
>> Subject: [EXTERNAL] Windows Installation Instructions, All DLL Files 
>> Missing
>>
>> I manage a project[0]  that leverages JavaFX. It's been a while since 
>> I've worked on this project, almost two years. At that time JavaFX was 
>> bundled with the Java runtime from Oracle. The few customers I had 
>> would simply run the application from the bundled launcher and as long 
>> as they had Java installed, it would work.
>>
>> It's time for me to add some features to the project, I am now using 
>> OpenJDK 14.0.1 and I installed the OpenJavaFX package and followed the 
>> instructions[1] from the following URL:
>>
>> https://openjfx.io/openjfx-docs/#install-javafx
>>
>> I am on Windows and followed the instructions for that platform.
>> Unfortunately, things didn't really work. The error was as follows:
>>
>> Graphics Device initialization failed for : d3d, sw Error initializing
>> QuantumRenderer: no suitable pipeline found java.lang.RuntimeException:
>> java.lang.RuntimeException: Error initializing QuantumRend erer: no 
>> suitable pipeline found at 
>> javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer.getInstance(Unkno 
>>
>> wn Source)
>>
>> I fussed with this and that but nothing made a difference. Eventually 
>> I tried adding the "bin" directory from the JavaFX distribution to my 
>> path. This is the entry I added to my global PATH variable:
>>
>> C:\Program Files\Java\javafx-sdk-14\bin
>>
>> Is this the right way to do this and, if so, why isn't this included 
>> in the directions? Is this a Windows specific issue?
>>
>> Also, what impact does this have on distribution of applications?
>>
>> Looking at the "Runtime Images" instructions, it looks like the same 
>> issues will be present. Those instructions use `jlink` to point to the 
>> JavaFX libraries and the JAVAFX modules (distributed in another 
>> package) but also leave off references to the DLL files in the "bin" 
>> directory. I am worried that I will need to have people manually 
>> install the OpenJavaFX distribution and add the "bin" directory to 
>> their path in order to run my application. Please say it's not so!
>>
>> Any help or pointers to additional documentation would be very much 
>> appreciated! I have made it over the bumps and can now continue 
>> development of my application, my next concern is distributing it to 
>> customers.
>>
>> -- 
>> Miles
>>
>> [0]: https://github.com/cmiles74/xmltool
>> [1]: https://openjfx.io/openjfx-docs/#install-javafx
> 



More information about the openjfx-dev mailing list