jdk 1.7.0_u2 x64 中的 Minecraft

jdk 1.7.0_u2 x64 中的 Minecraft

我有 Ubuntu 11.10 64 位,并且通过以下方式安装了 JDK 1.7.0 update 2 x64webupd8 页面。但我目前在玩 minecraft 游戏时遇到了问题。从以下网站下载启动器后Minecraft.net通过 launcehr 启动游戏java -jar /home/zrebec/Downloads/minecraft.jar可以正常启动,登录游戏后下载更新,但随后我在终端中看到黑屏,如下所示:

Setting user: zrebec, -356009615199623309
Exception in thread "Minecraft main thread" java.lang.UnsatisfiedLinkError: /home/zrebec/.minecraft/bin/natives/liblwjgl.so: /home/zrebec/.minecraft/bin/natives/liblwjgl.so: wrong ELF class: ELFCLASS32 (Possible cause: architecture word width mismatch)
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1928)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1825)
at java.lang.Runtime.load0(Runtime.java:792)
at java.lang.System.load(System.java:1059)
at org.lwjgl.Sys$1.run(Sys.java:69)
at java.security.AccessController.doPrivileged(Native Method)
at org.lwjgl.Sys.doLoadLibrary(Sys.java:65)
at org.lwjgl.Sys.loadLibrary(Sys.java:81)
at org.lwjgl.Sys.<clinit>(Sys.java:98)
at org.lwjgl.opengl.Display.<clinit>(Display.java:132)
at net.minecraft.client.Minecraft.a(SourceFile:180)
at net.minecraft.client.Minecraft.run(SourceFile:648)
at java.lang.Thread.run(Thread.java:722)

有人能帮我解决这个问题吗?我认为问题出在架构上,因为:

liblwjgl.so: /home/zrebec/.minecraft/bin/natives/liblwjgl.so: wrong ELF class: ELFCLASS32 (Possible cause: architecture word width mismatch)

请问有什么想法吗?

我知道,也许这个与主题无关,因为也许这不是 Ubuntu 的问题,但在 64 位上一切都完美无缺,我认为接受的答案可以帮助许多用户,并且可以更好地在 Linux 下玩游戏。真的。非常感谢您的任何想法。

答案1

我有同样的问题,但我通过安装webupd8 - 通过 PPA 存储库在 Ubuntu 中安装 Oracle Java(JDK)7,在互联网上搜索我找到了这个脚本(我已将该脚本改编为适合我的系统)但基本上是这样的:

#!/bin/bash
export LD_LIBRARY_PATH="/opt/java/jre/lib/amd64"
java minecraft.jar

我的系统的脚本:

#!/bin/bash
export LD_LIBRARY_PATH="/usr/lib/jvm/java-7-oracle/jre/lib/amd64"
java -jar Minecraft.jar

我希望这会有用

答案2

在 Fedora 论坛上发现了这个,它运行良好,运行 12.04 Ubuntu-64bit 和 OpenJDK7u3

关联

“我刚刚遇到了同样的问题,以下是对我有用的方法:

  1. http://lwjgl.org/download.php
  2. 点击链接下载最新稳定版本
  3. 下载 lwjgl-xxxzip(撰写本文时为 lwjgl-2.8.3.zip)
  4. 转到主文件夹并按 ctrl + h 显示隐藏文件
  5. 转到 .minecraft/bin 并将下载的 zip 中的 jar 文件夹中的匹配 .jar 文件复制到那里
  6. 将 zip 文件中 native/linux 文件夹中的 .so 文件复制到 .minecraft/bin/natives
  7. 启动 Minecraft

希望有帮助!“

答案3

您不必每次运行 minecraft 时都启动脚本,还可以将库添加到 ldconfig 中:

sudo su -c "echo [path to java]/lib/amd64(or i386) > /etc/ld.so.conf.d/java.conf"
sudo ldconfig

现在只需在文件管理器中使用 java 打开 minecraft 即可运行

(第 1 行的示例:sudo su -c "echo /usr/lib/jvm/oracle-java/lib/amd64 > /etc/ld.so.conf.d/java.conf")

答案4

@JoZ3 非常感谢。你解决了我的问题。诀窍是重定向该路径。这只是给初学者的一个小教程。在阅读本文之前,我假设你们都安装了 JDK 7,就像 JoZ3 在他的帖子中写的那样。(需要 Oracle JDK。)

  1. 下载minecraft.jar。将其放在桌面上的某个文件夹中。
  2. 创建一个文本文档并将 JoZ3 的命令粘贴到其中。这是必需的命令,我们正在创建一个 shell 脚本。

    #!/bin/bash  
    export LD_LIBRARY_PATH="/usr/lib/jvm/java-7-oracle/jre/lib/amd64"  
    java -jar Minecraft.jar 
    

    例如,将其另存为fix.sh

  3. 确保chmod fix.sh使用此命令运行。cd到文件所在的目录并在终端中输入以下命令:

    sudo chmod 755 fix.sh
    
  4. fix.sh通过将其拖到终端并按 Enter 来从终端运行,或者通过手动在终端中输入其位置并按 Enter 来运行。

游戏现在可以正常运行了!它解决了我的问题。

相关内容