Minecraft в jdk 1.7.0_u2 x64

14

У меня Ubuntu 11.10 64-bit, и я установил JDK 1.7.0 update 2 x64 через страницу webupd8 . Но в настоящее время у меня есть проблемы с игрой Minecraft. После загрузки лаунчера с Minecraft.net и запуска игры по 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. В самом деле. Большое спасибо за любую идею.

Нела Дробна
источник
2
Почему бы не придерживаться openjdk-6-jre? Мой брат играет в Minecraft на 64-битной Kubuntu 11.10 без проблем.
Лекенштейн
У openjdk-6-jreменя были некоторые проблемы во время игры. Примерно через 2–3 минуса игра показалась кричащей, а затем рухнула :( Может быть, в игре есть какие-то баги? Но в Windows у меня нет проблем с этим. Я могу играть часами и ничем. И там я использую Oracle JDK 1.7 (JDK, потому что Я младший программист на Java - сейчас изучаю Java). Спасибо
Nela Drobná
Я бы попробовал 32-битную версию Java, по крайней мере, это то, что я подозреваю, что проблема с этим сообщением об ошибке.
Безумный ученый
И так .... проблема не openjdk-7-jre-amd64решается :) Я установил openjdkjava version "1.7.0_147-icedtea" OpenJDK Runtime Environment (IcedTea7 2.0) (7~b147-2.0-0ubuntu0.11.10.1) OpenJDK 64-Bit Server VM (build 21.0-b17, mixed mode)
Nela Drobná
Мой работает с openjdk, но не с Oracle jdk. Использование Minecraft 1.2.5.
Луис Альварадо

Ответы:

3

Вместо того, чтобы запускать скрипт каждый раз, когда вы хотите запустить minecraft, вы также можете добавить библиотеки в ldconfig:

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

Теперь просто запустите Minecraft, открыв его с помощью Java в файловом менеджере.

(пример строки 1: sudo su -c "echo / usr / lib / jvm / oracle-java / lib / amd64> /etc/ld.so.conf.d/java.conf")

mid_kid
источник
2
Вместо sudo suтебя можно использоватьecho ... | sudo tee /etc/ld.so.conf.d/java.conf
l0b0
@ l0b0 Или sudo su -c "echo ...> /etc/ld.so.conf.d/java.conf" Спасибо за ваше предложение в любом случае.
mid_kid
1
Ты прав. Смысл был просто запустить как можно меньше, чем root.
10
19

У меня та же проблема, но я установил через webupd8 - Установите Oracle Java (JDK) 7 в Ubuntu через PPA-репозиторий , выполняя поиск в Интернете, я нашел этот скрипт (я адаптировал скрипт под свою систему), но в основном это:

#!/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

Надеюсь это будет полезно

JoZ3
источник
1
Да, отличное решение :) Это то, что я нашел около часа назад :) Большое спасибо
Nela Drobná
1
Это LD_LIBRARY_PATHбыл недостающий кусок для меня. Спасибо!
Джастин Форс
8

Нашел это на форуме 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 и скопируйте соответствующие файлы .jar из папки jar в zip-файле, который вы там загрузили
  6. Скопируйте .so файлы из папки native / linux в zip-файле в .minecraft / bin / natives
  7. Запустите Minecraft

Надеюсь, это поможет! "

Varanuskomo
источник
Спасатель жизни! Я был чертовски разочарован.
Chev
2

Если вы используете этот тип Java, http://www.wikihow.com/Install-Oracle-Java-on-Ubuntu-Linux , то это правильный код, который вам нужен.

#!/bin/bash
export LD_LIBRARY_PATH="/usr/local/java/jre1.7.0_05/lib/amd64"
java -jar /path to your minecraft.jar file

Спасибо, JoZ3, я просто немного изменил твой код.

Белая Шляпа Хакер
источник
1

@ JoZ3 Большое спасибо. Вы решили мою проблему. Хитрость была в том, чтобы перенаправить этот путь. Просто небольшая пачка для начинающих. Прежде чем читать это, я предположил, что вы все установили JDK 7, как JoZ3 написал в своем посте. (Необходим Oracle JDK.)

  1. Скачать minecraft.jar. Поместите его в какую-нибудь папку на рабочем столе.
  2. Создайте текстовый документ и вставьте в него команды JoZ3. Это обязательная команда, и мы создаем сценарий оболочки.

    #!/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.

Игра должна работать сейчас! Это решило мою проблему.

Игорь Рајачић
источник
0

Итак ... я нашел решение :)

На этой странице я написал этот скрипт и он отлично работает :) Я удаляю OpenJDK и после выполнения этого скрипта игра работает :)

export LD_LIBRARY_PATH="/usr/lib/jvm/jdk1.7.0_02/jre/lib/amd64"
java -Xmx1024M -Xms512M -cp minecraft.jar net.minecraft.LauncherFrame
Нела Дробна
источник
0

Я скачал Windows Exe, пусть загрузится, вытащил банку Minecraft из Windows, я обнаружил, что это работает для меня (так как один для Linux на их сайте не)

Dr_Bunsen
источник
0

Это сработало для меня:

#!/bin/bash
export LD_LIBRARY_PATH="/usr/lib/jvm/java-7-oracle/jre/lib/amd64"
java -Xmx1024M -Xms512M -cp minecraft.jar net.minecraft.LauncherFrame

Я адаптировал каталог, потому что я использую JAVA от ORACLE . Это решило загадку черного экрана. (:

Рафаэль Бьяджони де Фасио
источник
0

Простое исправление, загрузите файл .jar с веб-сайта minecraft, переместите его на рабочий стол, щелкните правой кнопкой мыши, выберите свойства, проверьте, чтобы исполняемый файл был готов и все готово.

Шон
источник