再见了,感谢所有的Applet

💡 原文英文,约800词,阅读约需3分钟。
📝

内容提要

从JDK 26开始,java.applet包将被移除,JDK 25是最后一个包含该API的版本。由于现代浏览器不再支持插件模型,Applet的使用大幅减少。移除工作自2016年开始,预计对应用影响甚微。开发者应使用jpackage工具部署Java应用。

🎯

关键要点

  • 从JDK 26开始,java.applet包将被移除,JDK 25是最后一个包含该API的版本。

  • Applet曾是Java平台的基础类,自JDK 1.0起便随附发布,主要用于在浏览器中运行小程序。

  • 由于现代浏览器不再支持插件模型,Applet的使用大幅减少,java.applet API在用户应用中几乎没有意义。

  • JDK从未提供运行Applet的方式,Applet API的移除经过了长达10年的准备和警告。

  • 开发者应使用jpackage工具来部署Java应用,创建本地平台安装程序。

  • 大多数独立的AWT/Swing应用程序可以轻松迁移,java.applet.Applet类是java.awt.Panel的子类。

  • JDK 25引入了javax.sound.SoundClip作为java.applet.AudioClip的替代品。

  • java.desktop模块的其他部分(如AWT、Swing、Java 2D)功能不受影响,继续得到支持和增强。

延伸问答

为什么java.applet包会被移除?

因为现代浏览器不再支持插件模型,Applet的使用大幅减少,且java.applet API在用户应用中几乎没有意义。

JDK 26的发布对开发者有什么影响?

JDK 26发布后,开发者需要使用jpackage工具来部署Java应用,创建本地平台安装程序。

Applet在Java历史上有什么重要性?

Applet是Java平台的基础类,自JDK 1.0起便随附发布,曾用于在浏览器中运行小程序,增强用户体验。

如何迁移现有的AWT/Swing应用程序?

大多数独立的AWT/Swing应用程序可以轻松迁移,因为java.applet.Applet类是java.awt.Panel的子类。

JDK 25引入了什么替代品?

JDK 25引入了javax.sound.SoundClip作为java.applet.AudioClip的替代品。

Applet API的移除经过了怎样的准备过程?

Applet API的移除经过了长达10年的准备,从JDK 9开始逐步弃用,JDK 17时正式标记为待移除。

➡️

继续阅读