Question: How do you bundle up your TornadoFX appl...
# tornadofx
a
Question: How do you bundle up your TornadoFX application for different platforms? I'm currently shipping a .jar file for Linux and MacOS and an .exe using
launch4j
- however
launch4j
seems to work on some systems and others not so I'm kind of looking for an alternative. Ideally I'd also want to create a .dmg file for MacOS and to top it off, it would be perfect to be able to ship the application and a JRE in a single package to avoid users having to install another dependency
k
I use macAppBundle to make a DMG for mac
https://github.com/crotwell/gradle-macappbundle/wiki/Intro sounds like exactly what you’re looking for
d
I'm using the
badass-runtime-plugin
to assemble a runtime 'image' for each of Linux, Mac and Windows from the same build host.
c
If commercial is an option, I use Install4J
c
Have you considered
jlink
that is available from Java 9 and later
c
I think they're looking for a platform-specific sequence of screens that will install their app including the JRE.
c
g
we've had good success with fxlauncher, running our app on macs and windows.
fxlauncher is nice for us because it auto-updates on app launch.
a
Nice, will definitely check out every mention here. Another issue that would perhaps be useful to mention is signing of artifacts. Launch4j has some issues in that signing the .exe will break the .exe if the .jar is wrapped 🙂
p
I use launcherFx (I think that's the name) to auto-update.
a
If you are on JDK 8, just use javapackager: https://docs.oracle.com/javase/8/docs/technotes/guides/deploy/self-contained-packaging.html#BCGIBBCI There are Gradle and Maven plugins on this which makes it easier to do this.