The JavaFX classes are there, but what about the native libraries?

A fat jar isn’t a good way to distribute a Java application these days. Now you 
should probably be using jpackage and/or jlink to bundle your application 
classes with a runtime suitable for running the application. 

Scott

> On Jul 19, 2020, at 5:32 PM, Davide Perini <[email protected]> 
> wrote:
> 
> Hi all,
> thanks for the great project, I love JavaFX.
> 
> I always used the maven plugin to crete fat jars with all my deps. The 
> resulting jar is an executable one and ready to use.
> 
> This is my pom that create the fat jar.
> 
> but when I try to exceute the jar I get this error:
> 
> Error: JavaFX runtime components are missing, and are required to run this 
> appli
> cation
> 
> 
> if I explode the fat jar I can see that there are the javafx class in it. 
> what am I doing wrong?
> 
> Thanks
> Davide
> 
> <plugin> <groupId>org.openjfx</groupId> 
> <artifactId>javafx-maven-plugin</artifactId> 
> <version>${javafx.maven.plugin.version}</version> <configuration> 
> <mainClass>org.dpsoftware.FastScreenCapture</mainClass> </configuration> 
> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> 
> <artifactId>maven-assembly-plugin</artifactId> <configuration> 
> <outputDirectory>${project.build.directory}/</outputDirectory> 
> <finalName>JavaFastScreenCapture</finalName> </configuration> <executions> 
> <execution> <id>make-executable-jar-with-dependencies</id> 
> <phase>package</phase> <goals> <goal>single</goal> </goals> <configuration> 
> <archive> <manifest> <addClasspath>true</addClasspath> 
> <mainClass>org.dpsoftware.FastScreenCapture</mainClass> </manifest> 
> </archive> <descriptorRefs> 
> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> 
> </configuration> </execution> </executions> </plugin>
> 

Reply via email to