In order to create a real platform installer with jpackage and jlink/jdeps you don't have to use the java module system at all. Have a look at this tutorial which I co-autored together with Dirk Lemmermann:
<https://github.com/dlemmermann/JPackageScriptFX>
Michael

Am 20.07.20 um 19:25 schrieb Davide Perini:
Unfortunantly so few dependencies supports Java Modules this day, so fat JAR is the only way I can do it.

Thanks

Il 20/07/2020 02.50, Scott Palmer ha scritto:
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 <perini.dav...@dpsoftware.org> 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