如何在 java 10 或更高版本 java 11 中运行现有的 JAVA Web 启动应用程序
Posted
技术标签:
【中文标题】如何在 java 10 或更高版本 java 11 中运行现有的 JAVA Web 启动应用程序【英文标题】:How to run existing JAVA Web start application in java 10 or later java 11 【发布时间】:2019-01-13 05:42:13 【问题描述】:我的应用程序是用 20 岁的 java Swings 开发的。对于这个庞大的应用程序,我们现在正在 JAVA 10 上进行相同的迁移,并将在 Java 11 或即将发布的版本上进行相同的迁移。此应用程序在 java Webstart 上运行良好,并且根据 java 11 功能,java Web Start 应用程序在 java 11 和其他即将推出的版本中将不受支持。
请告诉我在没有 webstart 的情况下在 java 10 上运行我的应用程序的最佳方式。
【问题讨论】:
【参考方案1】:有OpenWebStart 启动项目。它说:
我们决定创建 OpenWebStart,这是一个开源的重新实现 Java Web Start 技术。我们的替代品将提供最 Java Web Start 和 JNLP 标准的常用特性,所以 您的客户可以继续使用基于 Java Web 的应用程序 启动和 JNLP 没有任何变化。
目前该项目处于 Alpha 阶段。 Download 可用。测试版应该会在今年年底推出:
我们的目标是准备好 beta 测试和发布候选版本 2019 年第三季度
【讨论】:
测试版下载现已推出【参考方案2】:一种解决方案可能是 Karakun 目前正在研究的 WebStart 替代品:https://dev.karakun.com/webstart/
目前尚不清楚这将在何时以及如何实现,因为它基于一种众筹,但由于每个人都可以参与(即使成本很低),这是一个很好的可能性。
由于这是Applet/JNLP on Java 11 migration 的副本,所以我只是复制了我的答案
【讨论】:
【参考方案3】:您必须找到 JWS/JNLP 的替代技术来运行您的系统,因为 JWS/JNLP 将不再可用。
我没有明确的替代方案,少数仍在使用 JWS 的公司倾向于开发自己的替代品供内部使用。
我知道这可能不是您想听到的(没有开箱即用的替代品),但事实就是这样。我正在进行的项目也遇到了类似的难题,我们还有几个 JWS 组件需要在不久的将来重新设计。
【讨论】:
【参考方案4】:使用 Getdown,这是一个用于将 Java 应用程序部署到最终用户计算机并保持这些应用程序最新的系统。
由于 Java Web Start 的限制,它被设计为 Java Web Start 的替代品。
您可以在https://github.com/threerings/getdown上阅读更多内容
【讨论】:
以上是关于如何在 java 10 或更高版本 java 11 中运行现有的 JAVA Web 启动应用程序的主要内容,如果未能解决你的问题,请参考以下文章
如何使使用旧 Java 版本开发的应用程序在 jdk 9 或更高版本上运行? [复制]
Android N 要求 IDE 运行 Java 1.8 或更高版本?
如何修复 - safeAreaLayoutGuide' 仅适用于 iOS 11.0 或更高版本
Maven报错Error:java: 不再支持源选项 5。请使用 6 或更高版本。(JDK14版成功解决)