我们在生产中遇到了Java Web Start的巨大问题。我们害怕发布,因为每次我们这样做,帮助台都会收到来自1/3用户的电话,导致“无法启动”错误。很难说这是因为用户错误,下载过程中取消,网络连接不良还是其他任何问题。但底线是:
我们发现它非常不可靠。
部署和更新丰富的Swing应用程序有哪些替代方案?无论是免费的还是商业的,我对功能和稳健性更感兴趣。
可靠性是关键,但我还想拥有以下内容:
答案 0 :(得分:6)
我感觉到你的痛苦,我在JWS中遇到的最大问题是可见性,即它在做什么,为什么要这样做。我们的大多数问题都与内部代理有关(Java似乎真的不喜欢验证代理),而且似乎的皱纹暂时被解决了。尽管如此,我确实考虑过只写一个替代品。这并不像听起来那么疯狂,JWS做了很多我并不真正关心的事情,即与Web浏览器集成并检查JVM版本。请考虑以下情形:
这应该比常规JNLP提供一些非常显着的优势:
可悲的是,我无法解雇你上面的工作版本,我确实启动了原型但暂停了它。我将来可能要回到它,在这种情况下,我很乐意分享完成的版本。
干杯, 菲尔
答案 1 :(得分:2)
目前我们正在使用GetDown来处理我们的swing应用程序的分发。我们使用Tomcat来分发更新,使用 GetDown 来下载这些更新。它非常灵活和强大,并且比java WebStart更好,因为它为更改生成校验和,它可以节省带宽并下载刚更改的文件。
答案 2 :(得分:1)
您可以使用安装程序:例如Install4j。
您可以在此处找到安装程序列表:What are good InstallAnywhere replacements for installing a Java EE application?
答案 3 :(得分:1)
由于Oracle不推荐使用Java Web Start,我们正在考虑使用Microsoft的.NET Click Once下载并启动我们的Java应用程序。
我们将有一个Click Once .application文件运行一个检测Java的MS程序,下载我们最新的jar文件,然后使用检测到的Java版本和Jar文件启动我们的Java程序。
当然,这只是Windows机器的解决方案,但我们的客户完全在Windows上,所以这适用于那种环境。
MS点击一次:https://docs.microsoft.com/en-us/visualstudio/deployment/clickonce-security-and-deployment
答案 4 :(得分:0)