JavaWebStart替代方案

JavaWebStart替代方案,java,deployment,java-web-start,urlclassloader,Java,Deployment,Java Web Start,Urlclassloader,我们正在寻找一种替代JavaWebStart的方法,它可以有效地做同样的事情,只是实现得更好。我们遇到了很大的麻烦。我们有几个XP台式机办公室,都略有不同,到目前为止,只有少数工作没有认真调整。问题在于不能很好地处理代理设置(在Java控制面板中使用direct connection允许它工作)、在设置了“-Xmx”等参数时拒绝运行,但在未设置时运行良好(直到内存耗尽)以及其他我们无法修复的奇怪问题 web start的工作方式正是我们想要的,即连接到拥有该应用程序的服务器,下载任何更改的内容,

我们正在寻找一种替代JavaWebStart的方法,它可以有效地做同样的事情,只是实现得更好。我们遇到了很大的麻烦。我们有几个XP台式机办公室,都略有不同,到目前为止,只有少数工作没有认真调整。问题在于不能很好地处理代理设置(在Java控制面板中使用direct connection允许它工作)、在设置了“-Xmx”等参数时拒绝运行,但在未设置时运行良好(直到内存耗尽)以及其他我们无法修复的奇怪问题

web start的工作方式正是我们想要的,即连接到拥有该应用程序的服务器,下载任何更改的内容,保存JAR缓存,等等。这里的其他团队在他们的C#应用程序中使用“clickonce”,它有效地做了同样的事情,但似乎没有那么麻烦

我相信我们不是唯一一个遇到这种情况的人,但四处搜索并没有真正显示出任何其他选择。我们已经研究过编写一个存根本地应用程序,它本质上只是一个URLClassLoader,可以动态地通过网络加载我们的应用程序,但不幸的是,其他办公室的速度太慢了。有人有什么想法吗

谢谢

更新

为了防止有人对最终发生的事情感到好奇,我们又给了webstart一个月左右的时间,但仍然遇到问题,所以我们实现了自己的版本。它基本上只是一个存根,它有一个URL类加载器,您可以指向Web服务器。它的代码小于200行,并且已经完美地工作了几个月。这并不理想,但在有人改进webstart之前,我们将坚持使用它

2018年更新


所以,几年后,我正在做一个新项目,有同样的问题。这次我们使用的不是编写自己的webstart实现。我们发现它比WebStart有了巨大的改进,而且对我们来说一直都很好

我觉得你所有的问题都很奇怪。我曾在一家使用JWS发布交易软件的公司工作过一段时间,它总是工作得很好。在放弃整个技术之前,你考虑过看一看吗?

我的公司也在经历webstart的痛苦,尤其是JRE 1.6更新19和20。我们的问题围绕着混合代码安全警告。(所有内容都已正确签名,并且问题是间歇性的)


不管怎样,我被三圈绊倒了。我还没有试过,但似乎很有希望,我们也经常使用JWS,从19年1月6日开始,这真的开始让人感到痛苦。有些应用程序启动时间是1-6秒19,其他的并没有,然后我们更新到1-6秒20,情况正好相反。然后更新到1-6_21/2/3/4,问题只会改变。我们可能会放弃。自Oracle接管以来,开发团队似乎发生了变化。否则,没有其他解释可以让JWS先坏后好。

我在公司里广泛使用JWS。我所看到的关于JWS的唯一真正问题只有在您尝试从缓存运行JWS并且您的客户机刚刚升级到较新版本的Java时才会出现。应用程序将无法启动,并出现“无法启动”、“未找到缓存文件”错误或类似错误

有两种方法可以解决这个问题:我要么清除缓存,让他们重新安装应用程序,要么让他们从我的网站上再次点击URL(对我的用户来说最简单)。在这两种情况下,问题都会自行解决。这就解释了为什么这里的几个开发人员从来没有看到过这个问题,很可能是因为他们的用户总是单击URL而不是安装的启动器

作为一种变通方法,在我的一些任务关键型应用程序中,我在脚本中使用以下任一选项:

java-jarnetx.jar-jnlp

爪哇

其中netx是第三方库

这不是最漂亮的解决方案,但对我来说,这些都是100%有效的


现在,如果我能想出如何让桌面快捷方式不见鬼去。。。但这是下一次的讨论。

下一次的讨论似乎也是不可靠的。我只是尝试了一些他们宣传的游戏网站作为实例。它们都未能加载到我的Firefox中。也许是我的Java到Firefox的集成造成的?我已经在JDK 1.6 64位之后安装了JRE 7 32位


一般来说,Web启动问题和糟糕的用户体验很多时候都与Java在用户机器上的安装方式有关。在Windows上,我注意到,如果在较新版本之后再安装较旧版本的Java(希望两者共存),我开始在运行小程序和WS-applications时遇到问题。

获得支持合同可能是个好主意。。。(披露:我为Oracle工作。)注意:链接的常见问题解答非常古老。Sun的Java6Update10对JWS进行了一次重大的改进。我们一直在使用FAQ,我们正在使用Java6Update20,以获得所有新的改进。问题是有这么多的问题,不应该有,应该很直接。我们的选择是继续一个接一个地解决问题,就像我们一直在做的那样,不知道要坚持多久,或者放弃技术,去做其他事情。@Dave,你看到了什么问题吗?多年来,我发现JNLP有很多问题,最终达到了我的容忍极限。在新更新可能覆盖正在运行的程序的缓存问题、参数传递被破坏(7U45)和自签名证书被弃用之间,我已经受够了。:-)我认为你应该写一篇关于你遇到的实际问题的文章,因为我相信你现在最好的途径是解决它们,而不是迁移到另一个技术上,比如Eclipse更新站点。目前我们只是一个接一个地解决问题,但我想可能有一个替代方案不是那么麻烦。然而,令人鼓舞的是,人们的建议是坚持使用WebStart,我想它对某些人来说一定有用。