如何运行Java小程序?[重复]


16

有没有办法在Chrome或Firefox上运行Java小程序?我在Java测试页上收到错误消息,表明由于不支持NPAPI,因此Java无法再在Chrome或Firefox上运行。

我有一个带有的旧*.class文件.html来运行它,我只想能够以某种方式运行此applet。但是如何?


在Chrome中,在Windows 10上:一些小程序可以使用“ CheerpJ Applet Runner”插件运行:chrome.google.com/webstore/detail/cheerpj-applet-runner/… 示例:math.la.asu.edu/~kawski/vfa2 单击在CheerpJ图标上。按下:“运行Applet”,等待3分钟,而CheerpJ将Applet动态转换为Javascript。使用转换后的Applet / Javascript,即您不是在运行真正的Applet,而是运行或可能无法正常运行的Javascript变体。
user19496

Answers:


21

有没有办法在Chrome或Firefox上运行Java小程序?

不可以。Firefox或Chrome不再支持Applet。

Firefox不再提供NPAPI支持(Java小程序所需的技术)

从2018年9月开始,Firefox不再提供支持NPAPI的版本,NPAPI是运行Java小程序所需的技术。用于Web浏览器的Java插件依赖于跨平台插件体系结构NPAPI,十年来,所有主流Web浏览器都一直支持该框架。Firefox的64位版本从不支持NPAPI,而Firefox 52ESR版本是支持该技术的最新版本。它低于安全基准,不再受支持。

Java和Firefox浏览器

Chrome不再支持NPAPI(Java小程序所需的技术)

用于Web浏览器的Java插件依赖于跨平台插件体系结构NPAPI,十年来,所有主流Web浏览器都一直支持该框架。Google的Chrome版本45及更高版本已不再支持NPAPI,因此Java插件不再适用于这些浏览器。

Java和Google Chrome浏览器


那么如何运行Java小程序?

使用Java SE 11之前的JDK中的AppletViewer。

appletviewer命令允许您在Web浏览器之外运行applet。

概要

appletviewer [ options ] urls ...

描述

appletviewer命令连接到url指定的文档或资源,并在其自己的窗口中显示文档引用的每个applet。注意:如果url引用的文档未引用带有OBJECT,EMBED或​​APPLET标记的小程序,则appletviewer不会执行任何操作。有关appletviewer支持的HTML标记的详细信息,请参阅AppletViewer标记。

注意:appletviewer仅用于开发目的。

appletviewer-Java Applet Viewer

或者,阅读Oracle白皮书(pdf),从Java Applets迁移到无插件的Java技术,推荐使用Java Web Start:

自2001年以来,Java Web Start已包含在Oracle JRE中,并且在首次下载使用Java Web Start技术的Java应用程序时自动启动。将小应用程序转换为Java Web Start应用程序可以在不依赖Web浏览器的情况下启动和更新生成的应用程序

请参阅什么是Java Web Start及其如何启动?了解更多信息。

请注意,Java Applet和Java Web Start 在Java SE 11(2018年9月发布)中已完全删除。从该版本开始,没有(受支持的)运行Applet或Web Start应用程序的方法。


4
那么如何运行Java小程序?:-)
jerrrrro

3
请注意,即使Java 11中的 webstart也已被删除, “正式”方式现在是使用j9 +模块来创建“精简”可下载应用程序,尽管j8仍支持“ deployment” = webstart了很多年
dave_thompson_085

9
@jerrrrro:显然您错过了过去十五年,当时Java沙箱(= applet / webstart)错误是系统感染和破坏的最大,最频繁的媒介之一。每隔几周,所有安全网站都会宣布“来自浏览器Java的巨大危险!立即从所有系统中删除Java!”,几周之后,“好的,Sun / Oracle对此补丁进行了修补”,几周后,“来自Java的另一巨大危险” !”。浏览器制造商对此感到厌倦并永久删除了支持,因此Oracle充分利用了它:“我们真的不再想在浏览器中运行”
dave_thompson_085

4
同样,@ jerrrrro,Java applet(和Flash applet)也被HTML5和各种WebApis淘汰,这允许实际将其整体集成到页面中,而不仅仅是一个嵌入的框,基本上与其余内容没有合法的交互。
Jan Hudec

1
在Windows上仍可以使用IE11吗?
Dan在Firelight的抚养下,

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.