Minecraft 在 12.04 版上出现黑屏

Minecraft 在 12.04 版上出现黑屏

升级到 12.04 后,我安装了 Minecraft、Openjdk 6 和 7。登录时一切正常,但之后我得到了“正在更新 Minecraft”屏幕约 0-5 秒,然后屏幕变黑。我等了大约 5 分钟,最终 MC 崩溃并出现错误报告。

Minecraft:Minecraft 1.2.5 OS:Linux(i386)版本 3.2.1-24-generic-pae Java:1.6.0_24,Sun Microsystems Inc. VM:OpenJDK Server VM(混合模式),Sun Microsystems Inc. LWJGJ:2.4.2 [无法获取系统属性(java.lang.NullPointerException)]

org.lwjgl.LWJGLEXCEPTION:无法在 org.lwjgl.opengl.LinuxDisplayPeerInfo.initDefaultPeerInfo(本机方法)处初始化 GLX,位于 org.lwjgl.opengl.LinuxDisplayPeerInfo。(linuxDisplayPeerInfo.java:52)

报告还有更多内容,如果您希望我继续,请告诉我,我必须手动输入所有这些内容,因为我无法复制粘贴错误报告。其余行都是一堆at blah.blahblah.blah

答案1

在 Minecraft 1.2.5 中,LWJGL 文件已更新。Mojang 忘记使用新的 LWJGL Linux 文件更新其数据库。您需要自行更新它们(这将在 MInecraft 1.3 中修复)。以下是带有说明的 wiki 链接:http://www.minecraftwiki.net/wiki/Tutorials/Update_LWJGL

答案2

在旧版本的 Ubuntu 上,你可以使用以下命令修复此问题

sudo apt-get install sun-java6-jre sun-java6-plugin

但是这些包似乎不在 Precise 的存储库中。

答案3

当更新 ubuntu 时,我的视频卡驱动程序总是需要更新,否则在启动 minecraft 时我会遇到黑屏,然后出现错误消息。

我的建议是从你的显卡制造商那里寻找一个新的显卡驱动程序,因为他们可能会制作一个支持的 Linux 版本,(例如 Ati)

这也许能解决你的问题。如果没有,你可以随时尝试按照本指南手动更新你的 lwjgl 包:http://www.minecraftwiki.net/wiki/Tutorials/Update_LWJGL

祝你好运!

答案4

将其保存在文件中并在终端上运行以修复 Linux/Ubuntu 上的 Minecraft 黑屏

#!/usr/bin/env bash

echo "Determining OS..."

if [[ "$(uname -s)" == "Linux" ]]; then
    mcdir="$HOME/.minecraft/"
elif [[ "$(uname -s)" == "Darwine" ]]; then
    mcdir="$HOME/Library/Application\ Support/Minecraft/"
else
    echo "OS not supported.  Exploding..."
    exit 1
fi

echo "Detirmining LWJGL latest version..."

latest=$(wget -q -O - http://lwjgl.org/download.php |\
        grep -o  "https:\/\/sourceforge.net\/projects\/java-game-lib\/files\/Official%20Releases\/LWJGL%20[0-9|\.]*")

echo "Detirmining download URL..."

dlurl=$(wget -q -O - "$latest" |\
        grep -o -m1 "http://sourceforge.net/projects/java-game-lib/files/Official%20Releases/LWJGL%20[0-9|\.]*/lwjgl-[0-9|\.]*.zip")

echo "Checking if ~./cache/ exists..."

if [[ ! -d "$HOME/.cache/" ]]; then
    echo "~./cache/ did not exist.  Creating..."
    mkdir "$HOME/.cache/"
fi

echo "Downloading latest LWJGL..."

wget -q -O "$HOME/.cache/lwjgl.zip" "$dlurl"

echo "Extracting zip file..."

unzip -qqo "$HOME/.cache/lwjgl.zip" -d "$HOME/.cache/"

lwjgldir=$(find "$HOME/.cache" -maxdepth 1 -type d -name "*lwjgl*" -print)

echo "Copying files..."

for i in "jinput" "lwjgl" "lwjgl_util"; do
    echo "Copying $i..."
    cp "$lwjgldir/jar/$i.jar" "$mcdir/bin/"
done
for i in "libjinput-linux" "libjinput-linux64" "liblwjgl" "liblwjgl64" "libopenal" "libopenal64"; do
    echo "Copying $i..."
    cp "$lwjgldir/native/linux/$i.so" "$mcdir/bin/natives/"
done

相关内容