您好,我在 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,我已在规则集.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>java -版本 java版本“1.6.0_22” Java(TM) SE 运行时环境(版本 1.6.0_22-b04) Java HotSpot(TM) 客户端虚拟机(版本 17.1-b03,混合模式,共享)
C:\Sites>java -版本 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+"/>
对于另一个小程序,我注意到以下内容
<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 必须完全匹配。这有任何有效性吗?任何帮助将非常感激。谢谢
最佳答案
好吧,成功解决了这个问题。
现在基本上java都会检查自己的https://java.com/applet/JavaRemovalTool/launch.jnlp当它被 uninstallapplet.js 启动时
Java 现在不喜欢在 jnlp 文件中列出 oracle.com。
谢天谢地,jnlp 是一个文本文件,可以打开来查看。
因此,将 oracle.com 添加到 java 控制台安全异常站点列表后,一切都很好!!
或者直接在记事本中尝试:
C:\Users\用户名\AppData\LocalLow\Sun\Java\Deployment\security\exception.sites
关于java - 部署规则集所需的 Java 版本不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21540665/