我从 Minecraft 1.16.2 更新到此时的 Minecraft 最新版本 1.18.1,打开 Minecraft Launcher 客户端,从下拉菜单中选择“最新版本 1.18.1”,点击“播放”按钮,然后收到一条错误消息“发生 jni 错误”(以及随后的一般 java 错误和崩溃)。
运行于 Windows 10 Home、64 位、版本 21H2、Build 19043.1415,配备 Intel i7。
到目前为止尝试了很多方法。这是我的当前设置状态:
据我所知,我现在只有这些包含 Java 可执行文件的文件夹:
C:\Program Files\Java\jdk-17.0.1\bin
C:\Program Files\Java\jre1.8.0_311\bin
C:\Program Files (x86)\Common Files\Oracle\Java\javapath
C:\ProgramData\Oracle\Java\javapath
C:\Users\[USER]\AppData\Local\Packages\Microsoft.4297127D64EC6_8wekyb3d8bbwe\LocalCache\Local\runtime\jre-legacy\windows-x64\jre-legacy\bin
至于提到 java、jdk 或 jre 的环境变量,我只有这些:
系统属性:高级:环境变量:
JAVA_HOME
=C:\Program Files\Java\jdk-17.0.1
Path
=C:\Program Files\Java\jdk-17.0.1\bin
Minecraft Launcher 有以下设置:
安装选项卡:最新版本:更多选项:Java 可执行文件:
C:\Program Files\Java\jre1.8.0_311\bin\javaw.exe
从命令提示符...
C:\Users\[user]>javac -version
javac 17.0.1
C:\Users\[user]>java -version
java version "17.0.1" 2021-10-19 LTS
Java(TM) SE Runtime Environment (build 17.0.1+12-LTS-39)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.1+12-LTS-39, mixed mode, sharing)
到目前为止我尝试过的其他事物的一些亮点:
• 尝试使用 ecosia 和超级用户搜索来查找错误消息,但这些解决方案基本上只是“更新 java”。
• 使用 Java 控制面板更新 Java,如此处所述,它为我带来了一个新的 JRE:
https://java.com/en/download/help/win_controlpanel.html
• 在“添加/删除程序”对话框中卸载了所有 minecraft,然后重新安装了所有程序(当然,在多次尝试之间多次重新启动了启动器和计算机)。
• 觉得“更新 java”可能有点模糊,所以我也去获取了一个新的 JDK:
https://www.oracle.com/java/technologies/downloads/#jdk17-windows
• 从这里下载:
https://download.oracle.com/java/17/latest/jdk-17_windows-x64_bin.exe
不确定命名约定为何改变:以前是,jdk-1.8.0_152
但现在是jdk-17.0.1
。我想,没什么大不了的。
• 在此更新之前,Minecraft 启动器有一个可见的 EXE 和各种文件和文件夹(以及与 jni 相关的错误的相关解决方法,其中提到捆绑,我认为这影响了启动器本身),但当前版本缺少可见的 EXE 和文件夹,因此我看不到再尝试此类解决方法的方法。
我相信这是这里提到的“捆绑”版本:
https://www.windowscentral.com/minecraft-pc-bundle-announced
Minecraft 启动器自我标识如下:
*Launcher for Windows*
Windows 10.0 2.2.8542
Thursday, December 16, 2021, 7:53:50 PM
02b800b20f858c2d92d48bd57b1ae2bc5773f175
*Bootstrap*
113
Friday, December 17, 2021, 3:52:10 PM
7fbe7a8a2670ec54ab3a005aaa0ee0bf311fd9f7
*UI*
8375
Thursday, December 16, 2021, 7:44:31 PM
02b800b20f858c2d92d48bd57b1ae2bc5773f175
“报告启动器错误”链接指向https://bugs.mojang.com由于此问题我无法访问:
bugs.mojang.com 上的 Google Authenticator 无限循环
这些似乎都没有任何效果。错误仍然存在。
我尝试获取如下崩溃报告...
https://minecraft.fandom.com/wiki/Tutorials/How_to_get_a_crash_report
...但没有任何最近一天的任何类型的崩溃报告(.txt 或 .log)。
有趣的比较:
如果我告诉启动器使用java.exe
而不是javaw.exe
我不会收到 jni 错误消息,但 Minecraft 仍然会立即崩溃。
如果我在 Minecraft 启动器的下拉列表中选择 Minecraft 1.16.2,它仍然可以正常启动。
答案1
在这种情况下,可以通过简单地删除 Minecraft 启动器中的条目来解决 Minecraft 的“发生 jni 错误”消息和崩溃:安装选项卡:最新版本:更多选项:Java 可执行文件:
C:\Program Files\Java\jre[version]\bin\javaw.exe
然后它将显示以下灰色消息:
<Use bundled java runtime>
(运行以前版本的启动器时,至少某些用户需要在其中包含 JRE 的路径,因此在某种程度上,只需将其更新为明显的值就会导致问题。)
之后,Minecraft Launcher 可以顺利启动 Minecraft 1.18.1。