Привет!
Есть у меня комп, AMD Athlon 64 X2. Там такая странность - не работает лицензионный лаунчер Майнкрафта с JRE больше 1.6. Начиная с версии 1.7, вот такая ошибка:
$ java -jar Minecraft.jar
Bootstrap (v5)
Current time is May 20, 2018 11:15:43 AM
System.getProperty('os.name') == 'Linux'
System.getProperty('os.version') == '3.0.101-420.g8bbeb55-default'
System.getProperty('os.arch') == 'amd64'
System.getProperty('java.version') == '1.8.0_144'
System.getProperty('java.vendor') == 'Oracle Corporation'
System.getProperty('sun.arch.data.model') == '64'
Looking for update
Downloading: https://s3.amazonaws.com/Minecraft.Download/launcher/launcher.pack.lzma
Got reply in: 1316ms
Found update in time, waiting to download
Downloaded 1076,7kb in 5s at 207,8kb/s
Renaming /home/zenitur/.minecraft/launcher.pack.lzma.new to /home/zenitur/.minecraft/launcher.pack.lzma
Renamed successfully.
Reversing LZMA on /home/zenitur/.minecraft/launcher.pack.lzma to /home/zenitur/.minecraft/launcher.pack
Unpacking /home/zenitur/.minecraft/launcher.pack to /home/zenitur/.minecraft/launcher.jar
Cleaning up /home/zenitur/.minecraft/launcher.pack
Starting launcher.
[11:15:55 INFO]: Minecraft Launcher 1.6.89-j (through bootstrap 5) started on linux...
[11:15:55 INFO]: Current time is May 20, 2018 11:15:55 AM
[11:15:55 INFO]: System.getProperty('os.name') == 'Linux'
[11:15:55 INFO]: System.getProperty('os.version') == '3.0.101-420.g8bbeb55-default'
[11:15:55 INFO]: System.getProperty('os.arch') == 'amd64'
[11:15:55 INFO]: System.getProperty('java.version') == '1.8.0_144'
[11:15:55 INFO]: System.getProperty('java.vendor') == 'Oracle Corporation'
[11:15:55 INFO]: System.getProperty('sun.arch.data.model') == '64'
[11:15:55 INFO]: proxy == DIRECT
[11:15:55 INFO]: JFX is already initialized
[11:15:56 INFO]: Refreshing local version list...
[11:15:57 INFO]: Refreshing remote version list...
1 0x7f21e0f956e7
2 0x7f21e0fdc28b
3 0x7f21e0d7cca0
4 0x7f21e0b476df
5 0x7f22420c2c80 pthread_once
6 0x7f21e0b477f3
7 0x7f21e03be087 Java_com_sun_webkit_WebPage_twkCreatePage
8 0x7f222cbce834
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007f21e0f956ec, pid=24352, tid=0x00007f22001f7700
#
# JRE version: Java(TM) SE Runtime Environment (8.0_144-b01) (build 1.8.0_144-b01)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.144-b01 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C [libjfxwebkit.so+0x1d366ec] WTFCrash+0x1c
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /home/zenitur/hs_err_pid24352.log
#
# If you would like to submit a bug report, please visit:
# http://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
Аварийный останов
Проблема - именно в процессоре. Потому что:
- В другом дистрибутиве Linux - то же самое
- Если переставить жёсткий диск на комп с другим, более новым процессором - AMD FX - то там всё нормально
Мне было как-то плевать: играл со старой Явой.
Начиная с релиза Minecraft 1.10, обновили требования к Яве. Теперь 1.8 минимум. Ну что ж делать. Играл с пиратским лаунчером. Потом я запустил Minecraft на Raspberry Pi. А там - как раз без лаунчера запуск. Решил попробовать применить эту инструкцию.
Упс. А в инструкции есть такие пункты: "Запустите лаунчер, скачайте файлы данных. Потом «накатите» Optifine. Потом запускайте этим sh-скриптом". Ага, лаучер нужно запустить один раз! Хм. У меня тут Java 1.8, я могу в синаптике «Указать версию...» 1.6, сделать всё что нужно, а потом установить обратно 1.8. Но мой 4G-интернет с лимитом 5 Гб/мес это не одобрит.
Распаковал RPM-ку jre-6u45-linux-x64.rpm
при помощи архиватора file-roller в пространство пользователя (чтобы не конфликтовать с системным пакетов). Запускаю:
/home/zenitur/jre1.6.0_45/bin/java -jar Minecraft.jar
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object
Решение нашлось по первому запросу. Теперь такое:
/usr/java/jre1.6.0_45/bin/java -jar Minecraft.jar
Bootstrap (v5)
Current time is May 20, 2018 12:47:42 PM
System.getProperty('os.name') == 'Linux'
System.getProperty('os.version') == '3.0.101-420.g8bbeb55-default'
System.getProperty('os.arch') == 'amd64'
System.getProperty('java.version') == '1.6.0_45'
System.getProperty('java.vendor') == 'Sun Microsystems Inc.'
System.getProperty('sun.arch.data.model') == '64'
Looking for update
Exception: java.net.MalformedURLException: unknown protocol: https
Exception in thread "Launcher downloader" java.lang.NoClassDefFoundError: javax/net/ssl/SSLHandshakeException
at net.minecraft.bootstrap.Downloader.suggestHelp(Downloader.java:141)
at net.minecraft.bootstrap.Downloader.run(Downloader.java:131)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: javax.net.ssl.SSLHandshakeException
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 3 more
Didn't find an update in time.
Reversing LZMA on /home/zenitur/.minecraft/launcher.pack.lzma to /home/zenitur/.minecraft/launcher.pack
Unpacking /home/zenitur/.minecraft/launcher.pack to /home/zenitur/.minecraft/launcher.jar
Cleaning up /home/zenitur/.minecraft/launcher.pack
Starting launcher.
FATAL ERROR: net.minecraft.bootstrap.FatalBootstrapError: Unable to start: java.lang.reflect.InvocationTargetException
at net.minecraft.bootstrap.Bootstrap.startLauncher(Bootstrap.java:242)
at net.minecraft.bootstrap.Bootstrap.execute(Bootstrap.java:124)
at net.minecraft.bootstrap.Bootstrap.main(Bootstrap.java:381)
Please fix the error and restart.
Короче, я загрузил Debian Squeeze 6 LiveCD, и скачал всё при помощи него. Там OpenJDK 1.6, и всё прошло нормально. Играю. Но мне всё-таки интересно, как же решить эту проблему?
Перемещено leave из talks