我已经问过这个并且被大量投票。不幸的是,我仍然无法解决它。我不知道我做了什么,但迟早我失去了在所有浏览器中运行java applets和java web start应用程序的能力。
这是一个正在发生的事情的例子。
我正在使用小程序http://csis.pace.edu/~bergin/Java/applets.htm打开页面并获得以下图片:
标志插件被阻止。我想解锁
导致另一个对话
OK之后我还有另一个
下
如果点击
等等。
Applet无法运行。
与PATHes共舞后,Java更新等等,一旦我可以运行applet。但迟早我会再次陷入这个位置。
我想知道,原则上可以排除这种情况吗?
我的意思是我根本不想禁用安全性,但我的意思是,如果我的明确许可,一切都应该运行。有可能吗?
更新
首先,我不明白,为什么我不能在过时的java上运行applet如果我想要?
我是人,机器人应该服从我! :)
假设我希望在旧版本的java上调试我的applet,为什么不呢?
其次,没有关于它认为我有什么版本以及它想要什么版本的信息?
如果没有此信息,版本检测机制中可能存在错误。
我在Program Files
中有多个Java版本,因为我是Java开发人员。那我怎么知道它使用哪一个?
更新2
我已将我的Java从1.8.0_20
更新为1.8.0_25
,现在情况发生了变化,但小程序无法运行。
证据我有“最新”的java:
我已将上述网站添加到排除列表中的证据:
小程序运行的效果:
(applet没有运行)
点击详细信息结果:
(事实上没有任何细节)
那么,该怎么办?
更新3
此网站无效:http://ssd.jpl.nasa.gov/sbdb.cgi?sstr=2012VP113;orb=1;cov=0;log=0;cad=0#orb
(显示轨道图)
重新加载/重新启动浏览器没有帮助。
答案 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安全例外列表中添加了站点)。