在浏览器中运行Java applet和JWS应用程序的必要和充分条件?

时间:2014-11-20 20:41:16

标签: java applet java-web-start

我已经问过这个并且被大量投票。不幸的是,我仍然无法解决它。我不知道我做了什么,但迟早我失去了在所有浏览器中运行java applets和java web start应用程序的能力。

这是一个正在发生的事情的例子。

我正在使用小程序http://csis.pace.edu/~bergin/Java/applets.htm打开页面并获得以下图片:

enter image description here

标志插件被阻止。我想解锁

enter image description here

导致另一个对话

enter image description here

OK之后我还有另一个

enter image description here

enter image description here

如果点击

enter image description here

等等。

Applet无法运行。

与PATHes共舞后,Java更新等等,一旦我可以运行applet。但迟早我会再次陷入这个位置。

我想知道,原则上可以排除这种情况吗?

我的意思是我根本不想禁用安全性,但我的意思是,如果我的明确许可,一切都应该运行。有可能吗?

更新

首先,我不明白,为什么我不能在过时的java上运行applet如果我想要

我是人,机器人应该服从我! :)

假设我希望在旧版本的java上调试我的applet,为什么不呢?

其次,没有关于它认为我有什么版本以及它想要什么版本的信息?

如果没有此信息,版本检测机制中可能存在错误。

我在Program Files中有多个Java版本,因为我是Java开发人员。那我怎么知道它使用哪一个?

更新2

我已将我的Java从1.8.0_20更新为1.8.0_25,现在情况发生了变化,但小程序无法运行。

证据我有“最新”的java:

enter image description here

我已将上述网站添加到排除列表中的证据:

enter image description here

小程序运行的效果:

enter image description here

(applet没有运行)

点击详细信息结果:

enter image description here

(事实上没有任何细节)

那么,该怎么办?

更新3

此网站无效:http://ssd.jpl.nasa.gov/sbdb.cgi?sstr=2012VP113;orb=1;cov=0;log=0;cad=0#orb

(显示轨道图)

重新加载/重新启动浏览器没有帮助。

1 个答案:

答案 0 :(得分:1)

我查看了你的html源代码并意识到你直接使用.class文件而不是将它包装在jar文件中。这就是你所拥有的:

<applet code="GSort.class" width=700 height=400>

我认为由于新的安全要求,直接使用.class文件时applet不再有效。它们必须包装在jar文件中,因为您需要将一些安全设置添加到jar文件的meta-inf文件夹中。以下是oracle建议部署applet的方法:

https://docs.oracle.com/javase/tutorial/deployment/applet/deployingApplet.html

修改 我再次尝试将网站URL添加到Java安全例外列表中,这次我让它工作了!看起来chrome在退出后会留在内存中,因此更改Java安全性不会影响它,除非您完全关闭chrome并重新启动它。最简单的方法是使用Internet Explorer。尝试使用Internet Explorer,它应该工作(假设你仍然在java安全例外列表中添加了站点)。