On 2018-02-09T13:44:55 +0000
Johan Vos <johan....@gluonhq.com> wrote:
> Hi Mark,
> Is using jlink (https://docs.oracle.com/javase/9/tools/jlink.htm) packaging
> your app with the exact set of modules you need an option for you?
> That would eliminate the need for your users to have Java installed. Not
> only there is a (small) hurdle to install Java, but it needs to be the
> "correct" version of Java as well, and you would probably expect your users
> to update their JDK with security updates etc.
> I've been a long-time fan of the javapackager, and now that jlink allows
> you to create a custom runtime image, I think we have much better solutions
> than relying on the fact that an end-user installed an ok version of the
> But maybe I'm missing something, and is jlink not an option for you?
Oh, it's certainly an option for applications - if you're willing to
distribute separate platform-specific downloads for each platform. To
date, I've not offered platform-specific downloads for any
applications: Why would I when I can give all users the same
platform-independent jar file?
I'm still investigating coming up with a way to use (or possibly abuse)
jlink to produce a multi-platform distribution so that I still only
offer one single download for all platforms (with some magic scripts or
wrappers that execute the correct included JRE for the platform).
For libraries, it's obviously no help. For libraries, I'd need either a
guarantee that OpenJFX is present wherever a particular version of Java
is, or I'd need Maven coordinates so that the library can specify an
accurate (and automatically resolvable) dependency on JavaFX.
Personally, if a library isn't present on Maven Central, then I don't
even consider depending on it. Being deployed to Maven Central is, for
me, a basic indicator that the project in question is competently
maintained. OpenJFX has elevated status in this regard in that it's not
on Maven Central but I would still consider depending on it if
distribution issues could be solved.
Mark Raynsford | http://www.io7m.com