I use jpackage
(with JDK 14) for creating a standalone JavaFX application.
The output of jpackage
looks strange, it consists of two the same copies of JRE and all files in app
folder, except App.cfg
file, can be deleted without any problem.
Does jpackage
can do not generate unnecessary files?
What I have:
I have a simple project created from Maven archetype org.openjfx:javafx-archetype-simple:0.0.3
.
And I just added maven-shade-plugin
for creating jar with dependencies and a simple launching class for it (like NewMain
class here).
I do:
mvn package
mvn javafx:jlink
jpackage --package-type app-image --dest targetApp --name App --runtime-image target/image --main-jar testApp-1.0-SNAPSHOT.jar --input target
As result I have two folders with JRE (absolutely the same ones):
targetApp\App\runtime
targetApp\App\app\image
And all files (and folders) (JRE (~53 MB), Jar (~9 MB), classes...) in targetApp\App\app
can be safely deleted, except App.cfg
file.
After deleting these files I run targetApp\App\App.exe
and it works fine.
The deleting reduces the size of App
from 118 to 56 MB.
An additional question: I use Windows and jpackage
generates the result for Windows (a lot of dll
files and exe
), do I can create a standalone application in Windows for Mac and Linux?