gpt4 book ai didi

java - 在 Windows XP 上安装 JDK8 - advapi32.dll 错误

转载 作者:IT老高 更新时间:2023-10-28 20:21:52 25 4
gpt4 key购买 nike

我下载了JDK8构建 b121 并尝试安装时出现以下错误:

the procedure entry point RegDeleteKeyExA could not be located in the dynamic link library ADVAPI32.dll

操作系统是 Windows XP,版本 2002 Service Pack 3,32 位。

最佳答案

发生这种情况是因为 Oracle 放弃了对 Windows XP 的支持(顺便说一下,安装程序在其 ADVAPI32.DLL 中没有使用 RegDeleteKeyExA),如 http://mail.openjdk.java.net/pipermail/openjfx-dev/2013-July/009005.html 中所述.然而,虽然对 XP 的官方支持已经结束,但 Java 二进制文件仍然(至少从 Java 8u20 EA b05 开始)与 XP 兼容——只有安装程序不...

因此,解决方案实际上很简单:

  1. 获取 7-Zip(或任何其他好的解压器),手动解压发行版 .exe,里面有一个 .zip 文件(tools.zip),也解压它,

  2. 使用 JDK8 中的 unpack200 将所有 .pack 文件解包为 .jar 文件(旧的解包将无法正常工作); JAVA_HOME 环境变量应设置为您的 Java 解包根目录,例如"C:\Program Files\Java\jdk8"- 你可以通过例如隐式指定它

    SET JAVA_HOME=C:\Program Files\Java\jdk8
    • 使用单个命令解压所有文件(在批处理文件中):

      FOR /R %%f IN (*.pack) DO "%JAVA_HOME%\bin\unpack200.exe" -r -v "%%f" "%%~pf%%~nf.jar"
    • 使用单个命令(来自 JRE 根目录的命令行)解压所有文件:

      FOR /R %f IN (*.pack) DO "bin\unpack200.exe" -r -v "%f" "%~pf%~nf.jar"
    • 通过手动定位文件并逐个解包来解包:

      %JAVA_HOME%\bin\unpack200 -r packname.pack packname.jar

    其中 packname 是例如 rt

  3. 将您要使用的工具(例如 Netbeans)指向 %JAVA_HOME%,一切顺利。

注意:您可能不应该仅仅为了在 Web 浏览器中使用 Java 8 或出于任何类似原因而这样做(想到安装 JRE 8);主要 Java 版本的早期更新中的安全漏洞是(请注意)传奇,此外,在 XP 上既不支持 XP 也不支持 Java 8 只会让事情变得更糟。更不用说您通常不需要在您的浏览器中使用 Java(例如,参见 http://nakedsecurity.sophos.com/2013/01/15/disable-java-browsers-homeland-security/ - 该主题已经在许多页面上介绍过,如果您需要更多信息,只需 Google 即可)。在任何情况下,AFAIK 唯一需要将此过程应用于 JRE 是将上面指定的一些路径从 \bin\ 更改为 \lib\(文件放置在安装程序目录树中有点不同) - 但我强烈建议不要这样做。

另见:How can I get the latest JRE / JDK as a zip file rather than EXE or MSI installer?JRE 1.7 - java version - returns: java/lang/NoClassDefFoundError: java/lang/Object

关于java - 在 Windows XP 上安装 JDK8 - advapi32.dll 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20965564/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com