我开发了一个JavaFX应用程序,我将它作为Native Package分发,以避免让用户的Java版本低于7(因此,没有JavaFX)或根本没有Java。 / p>
但是,我也希望能够提供我的应用程序的更新。一个解决方案是让应用程序调用home(它已经通过XMLRPC与后端通信),获取JAR并自我更新。我可以看到实际更新过程中的潜在问题(需要构建一个单独的更新程序,但是如何更新更新程序?)。
我知道并且喜欢使用Java Web Start。但是,我不知道这是否适用于Native Package的东西。如果用户已经安装了Java,它将忽略我的捆绑JRE。如果他没有Java ......好吧,他不能使用Java Web Start,对吗?
如何以优雅的方式解决此问题,不会对用户体验产生不利影响? (并且最好不会很长时间实施)
注意:我使用e(fx)clipse作为构建工具。
答案 0 :(得分:2)
如果他没有Java ......好吧,他不能使用Java Web Start,对吗?
是的,但正如JWS tag Wiki中提到的那样:
Java Rich Internet Applications Deployment Advice。描述
deployJava.js
脚本旨在确保之前安装适当的最低版本的Java 提供一个链接 JWS应用程序 或发起一个 小应用程序。
请注意,JWS还提供了细粒度版本控制,详见Java Web Start - Runtime Versioning。
说,JWS 可以允许您通过有选择地将JavaFX 2 API添加到那些早期系统来支持早期系统。这是使用启动文件中基于版本的资源部分实现的。
因此,JWS与deployJava.js
相结合实际上将成为本页讨论的本地包的“替代方案”。