2

I have developed a JavaFX app and I am going to distribute it as a Native Package to avoid headaches with users having a Java version lower than 7 (and thus, without JavaFX) or having no Java at all.

However, I also want to be able to deliver updates of my application. One solution is for the app to call home (its already communicating with the backend via XMLRPC), fetch a JAR and self-update. I can see potential problems with the actual update process though (would need to build a separate updater program, but how do you update the updater?).

I know about and would love to use Java Web Start. However, I have no idea if this will work with the Native Package thing. If the user already has Java installed, it will disregard my bundled JRE. If he has no Java... well, he can't use Java Web Start, right?

How can I solve this problem in an elegant way that will not have a detrimental effect on user experience? (and preferably won't be very long to implement)

note: I am using e(fx)clipse as build tool.

1 Answer 1

2

If he has no Java... well, he can't use Java Web Start, right?

True, but as mentioned in the JWS tag Wiki:

Java Rich Internet Applications Deployment Advice. Describes the deployJava.js script designed to ensure a suitable minimum version of Java is installed before providing a link to a JWS app. or launching an applet.

Note that JWS also offers fine grained versioning as detailed in Java Web Start - Runtime Versioning.

Saying that, JWS can allow you to support earlier systems by adding the JavaFX 2 API selectively to those earlier systems. That is achieved using a version based resources section in the launch file.

So, JWS combined with deployJava.js would actually be 'the alternative' to the Native Package that page discusses.

Sign up to request clarification or add additional context in comments.

1 Comment

Can you clarify this a bit? Do you mean that if he has, say, Java 6, then using depolyJava.js + JWS, is he going to download just some extra JARs (presumably jfxrt.jar) or is JWS going to download and proceed to install, Java 7? Because I'm trying to avoid the latter.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.