0

我希望使用 JRE 版本 1.6.0_14 加载我的小程序。我已经安装了更新 14、17、24 和 35。我正在使用<object>标签classid来加载更新 14 的版本。

在这种情况下,小程序加载更新 35,然后再次加载更新 14。在更新 35 的 Java 控制台上没有发现错误,在更新 1.6.0_14 的 Java 控制台上,我们看到以下错误。

java.lang.ClassNotFoundException: sun/net/www/protocol/http/NTLMAuthenticationCallback

如何避免使用更高版本的 JRE?以及如何避免类未找到错误?

4

1 回答 1

1

使用较低版本的 JRE 运行存在严重的安全风险。当您运行自己的小程序时,不是因为您信任自己的代码。但其他人应该拒绝运行它。在使用未安装最新版本 JRE 的浏览器浏览网络时,您自己应该小心。

JRE 安装程序将 Java 插件安装到您的浏览器中,并且始终会启动一个插件版本,与您请求的 Java 版本无关。然后,插件将在您的对象标记的 classid 中​​指定的 JRE 中运行小程序。插件可用的版本可在 Java 控制面板中配置。

这就留下了为什么您的应用程序不能使用最新版本的 java 1.6 运行的问题。该插件在 1.6.0_something 中进行了大修,成为所谓的下一代插件。也许这就是给你带来麻烦的原因。您可以在 Java 控制面板的高级选项卡中表明您希望在您的机器上使用旧插件。(“启用下一代 Java 插件(需要重新启动浏览器”)。我认为知道禁用下一代插件是否能解决您的问题很有趣。

于 2013-01-15T00:06:01.190 回答