The jpackage tool of Java 14 can be used to create platform specific packages of java apps. The app does not require a JVM to run.
/opt/jdk-14/bin/jpackage --name etctoy --input target --main-jar etctoy.jar
The call is made from within a maven project. etctoy.jar is a fat-jar (size 6.6M) but the call should also work for regular jars with further dependencies in the target directory (see –input parameter).
The result is a debian package that installs the app under /opt/etctoy
sudo dpkg -i etctoy_1.0-1_amd64.deb
The installation uses 140M of disk space.
To make the tool available via command line on should link the binary into /usr/bin
sudo ln -s /opt/etctoy/bin/etctoy /usr/bin