您好我在32位机器上运行Windows 7,我最近升级到Java 1.7.0_51,现在我无法访问某些Java小程序。我尝试按照本教程
配置部署规则集http://wraithhacker.com/java-deployment-rule-set/
我几乎把所有事情都说明了。但是,当我尝试访问该应用程序时,我收到部署规则集阻止应用程序的错误。部署规则集所需的Java版本1.6.0_45不可用。
我还没有完全显示Java控制台。
我的系统上安装的Java版本是1.6.0_29和1.6.0_22我已经在我的ruleset.xml文件中尝试了这两个版本,但它们没有用。
`<ruleset version="1.0+">
<rule>
<id location="https://10.0.0.1" />
<action permission="run" version="1.6.0_22" />
</rule>
<rule>
<id location="http://www.customs.gov.dm/" />
<action permission="run" version="1.6.0_22" />
</rule>
<rule>
<id />
<action permission="block">
<message>Blocked by NTRC Management</message>
</action>
</rule>
</ruleset>`
c:\ Program Files \ Java \ jre1.6.0_22 \ bin&gt; java -version java版“1.6.0_22” Java(TM)SE运行时环境(版本1.6.0_22-b04) Java HotSpot(TM)客户端VM(版本17.1-b03,混合模式,共享)
C:\ Sites&gt; java -version java版“1.7.0_51” Java(TM)SE运行时环境(版本1.7.0_51-b13) Java HotSpot(TM)客户端VM(构建24.51-b03,混合模式,共享)
所以我确信我安装了两个版本的Java。
但是,如果您转到java控制面板并查看JNLP文件,我会注意到以下行
<java initial-heap-size="67108864" max-heap-size="268435456" java-vm-args="-XX:MaxNewSize=1024k" version="1.5+"/>
对于另一个applet,我注意到以下内容
<java initial-heap-size="536870912" max-heap-size="1073741824" href="http://java.sun.com/products/autodl/j2se" version="1.6.0_16"/>
<java initial-heap-size="536870912" max-heap-size="1073741824" href="http://java.sun.com/products/autodl/j2se" version="1.6.0_20"/>
我在某处读到这可能是问题,因为JRE必须完全匹配。这有效吗?任何帮助将非常感激。感谢
答案 0 :(得分:1)
确定设法解决了这个问题。
基本上java现在会在uninstallapplet.js启动时检查自己的https://java.com/applet/JavaRemovalTool/launch.jnlp
Java现在不喜欢oracle.com列在jnlp文件中的事实。
谢天谢地,jnlp是一个文本文件,可以打开看看。
所以在将oracle.com添加到java控制台安全异常站点列表之后,一切都很好!!
或直接在记事本中尝试:
C:\ Users \ USERNAME \ AppData \ LocalLow \ Sun \ Java \ Deployment \ security \ exception.sites
答案 1 :(得分:0)
不幸的是,使用加号(+)符号告诉网站上的applet / JNLP使用任何高于1.6的版本。包括1.7或1.8,这不是理想的结果。即使使用JRE 7u55和早期采用者版本8u20_b10,我也不知道JRE / JDK的一个版本,其工作原理是强制网站使用ruleset.xml中指定的JRE版本。 8u20_b10已经关闭,但我们的测试仍然存在问题。还在等......