【问题标题】:Java Web Start support in Java 9 and beyondJava 9 及更高版本中的 Java Web Start 支持
【发布时间】:2025-12-29 14:50:12
【问题描述】:

我对 Java Web Start 的状态感到困惑。 在 Oracle 的 Support Roadmap 上,我们可以看到:

支持部署技术

由 Java Plugin 和 Web Start 技术组成的 Web 部署技术具有更短的支持生命周期。对于 Java SE 8 的主要版本,Oracle 为这些技术提供五 (5) 年的首要支持。扩展支持不适用于部署堆栈,并且不适用于 Java SE 9 之后的支持。有关详细信息,请参阅 Oracle 终身支持政策。

Java SE 6 和 Java SE 7 的部署技术可能会在 2017 年 6 月之后随时删除。虽然部署堆栈可能包含在 Java SE 9 或更高版本中,但建议使用 Java SE 8,并且仅支持部署堆栈的版本

现在,我们已经知道 applet 和 Java 插件将在 Java 的未来版本中删除,但我从未听说过 Java Web Start 会被删除。

在 Oracle 的 Java Platform, Standard Edition Deployment Guide#Getting Started(Java 9 文档页面)中,Java Web Start 被宣传为已弃用的小程序技术的替代方案:

虽然在 JDK 9 中可用并受支持,但 Applet API 和 Java 插件被标记为已弃用,以准备在未来的版本中删除。小程序和嵌入式 JavaFX 应用程序的替代方案包括 Java Web Start 和自包含应用程序。

我是无忧无虑还是错过了关于 Java Web Start 弃用的公告?

【问题讨论】:

  • 如果我的理解是正确的:Java Web Start 将不再支持在版本 6 和 7 中部署 Java 应用程序。Java 插件(用于浏览器)和小程序将被删除,但 Java Web Start启动器将继续维护
  • 不太清楚这里关注的领域是什么,因为到目前为止这似乎涉及一个非常广泛的类别。跑题了?
  • @nullpointer 我不确定这是否真的属于 SO,但不知道 StackExchange 的哪个子站点最适合。关注的领域在最后的问题中:是否有关于 Java Web Start 停产的官方沟通,还是只是 Java 插件?
  • 我最好建议 (1) 将其移至邮件列表。 (2) 主要将范围缩小到您的任何应用程序 (3) 期望作者提出相关的事实来源。

标签: java java-web-start java-9


【解决方案1】:

根据http://www.oracle.com/technetwork/java/javase/9-deprecated-features-3745636.html

Java 部署技术已被弃用,将在未来的版本中删除

Java Applet 和 WebStart 功能,包括 Applet API、Java 插件、Java Applet 查看器、JNLP 和 Java Web Start,包括 javaws 工具,在 JDK 9 中都已弃用,并将在在未来的版本中删除。

这里有关于 OpenJDK 讨论列表的相关讨论:http://mail.openjdk.java.net/pipermail/discuss/2017-November/004586.html

Oracle 不会在 Java SE 11 (18.9 LTS) 及更高版本中包含 Java Web Start。

来源:Java Client Roadmap Update 2018-03-05 (Oracle)

【讨论】:

  • 我曾尝试从 Oracle 的社区论坛获得答案,但没有成功。作为提议的替代方案(jlink)的不幸消息似乎没有提供一组等效的功能。非常感谢 OpenJDK 列表。
  • Oracle 忘记了 Java 的成功要归功于“一次编写,到处运行” 现在看来,它更像是“每年重写,或者到处运行(其他)”
  • 我对这个消息感到非常震惊...今天刚刚发现,使用 Java Web Start 启动应用程序时,Java 10 会显示弃用警告...
【解决方案2】:

这适用于Premier, Extended and Sustaining Support。仅来自引用的文字:

  • 只有 Premier Support 涵盖部署技术;
  • 部署技术可能会在未来的 Java SE 6 和 7 版本中移除;
  • 由于小程序 API 和插件已被弃用,部署技术可能会在未来的主要版本中被移除;
  • Java 9 Premier 支持仅持续到 2018 年 3 月。

因此,Java 8 是唯一一个包含完整部署技术和中期高级支持(2022 年 3 月)的版本。

请注意,这并不意味着 Java Web Start 会消失,而是移除 Applet API 和插件意味着拆分部署技术。

【讨论】:

    【解决方案3】:

    一个解决方案可能是 Karakun 目前正在研究的 WebStart 替代品:https://openwebstart.com

    目前尚不清楚这将在何时以及如何实现,因为它基于一种众筹,但由于每个人都可以参与(即使成本很低),这是一个很好的可能性。

    由于这是 Applet/JNLP on Java 11 migration 的副本,所以我只是复制了我的答案

    【讨论】:

    • 有什么理由不使用 IcedTea-Web?
    • OpenWebStart 使用 IcedTea-Web。它有一个基于 install4j 的安装程序,他们创建了自己的 Java 控制面板版本,结果证明它也是 Oracle Java Web Start 的一部分,而不是 JRE 的一部分。加上无人值守安装。干得好!
    【解决方案4】:

    我在Oracle Blog entry上看到了这个

    2018 年 1 月 30 日,星期二

    Oracle Java SE 8 公共更新和 Java Web Start 的扩展 支持者:唐纳德·史密斯 |产品管理高级总监

    Oracle 已更新 Java SE 支持路线图。更详细的白色 本文将在不久后发布,但以下是所做的主要更改:

    • Oracle 的 Java SE 8 更新的公开可用性已至少延长至 2019 年 1 月。此外,Oracle 将继续 为消费者提供个人(非公司)使用的更新 Java SE 8 至少到 2020 年底。
    • Oracle 将继续支持 Java SE 8 Web Start 应用程序供公共和个人(非公司)使用,直至注明的相同日期 更多。
    • Oracle 将继续在 Java SE 8 上为商业用途或与 Oracle 结合使用时提供商业支持 Java Web Start 至少在 3 月之前具有 Web Start 依赖项的产品, 2025 年。
    • 正如 2015 年宣布的那样,至少在 2019 年 3 月之前,Java SE 8 将继续支持 Applet,等待浏览器继续支持 供应商。

    【讨论】:

      【解决方案5】:

      我开始使用 IcedTea Web。它在 Ubuntu 上运行良好。

      【讨论】:

        最近更新 更多