Încercând să fac upgrade Java la cea mai recentă versiune a serverului Minecraft (v1.18), am avut un pic de dramă pentru că serverul rula inițial Ubuntu 19.x, așa că m-am convertit la 20.04 după ce am găsit locul care îmi permite pentru a actualiza toate pachetele și a face upgrade.
După aceasta, am instalat JRE, aceasta este aceeași comandă care arată versiunea pe care o fac:
mortimer@mineraft:/home/minecraft$ sudo apt-get install default-jre
Citirea listelor de pachete... Gata
Construirea arborelui de dependență
Citirea informațiilor despre stare... Gata
default-jre este deja cea mai nouă versiune (2:1.11-72).
0 actualizat, 0 nou instalat, 0 de eliminat și 0 neactualizat.
În mod similar cu JDK:
mortimer@mineraft:/home/minecraft$ sudo apt-get install default-jdk
Citirea listelor de pachete... Gata
Construirea arborelui de dependență
Citirea informațiilor despre stare... Gata
default-jdk este deja cea mai nouă versiune (2:1.11-72).
0 actualizat, 0 nou instalat, 0 de eliminat și 0 neactualizat.
Rularea alternativelor de actualizare:
mortimer@mineraft:/home/minecraft$ sudo update-alternatives --config java
Există 4 opțiuni pentru java alternativă (furnizează /usr/bin/java).
Starea priorității căii de selecție
--------------------------------------------- ----------
0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 modul automat
1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 modul manual
2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 modul manual
3 /usr/lib/jvm/jdk-16.0.1/bin/java 0 modul manual
* 4 /usr/local/java/jre1.8.0_311/bin/java 1 modul manual
Apăsați <enter> pentru a păstra alegerea curentă[*] sau tastați numărul de selecție:
Dar dacă rulez comanda mea Q&D start:
mortimer@mineraft:/home/minecraft$ cat start.sh
#!/bin/bash
sudo java -Xmx6G -Xms4G -jar /home/minecraft/spigot-1.18.jar nogui > /dev/console
Primesc o eroare plăcută de la server care spune:
mortimer@mineraft:/home/minecraft$ sudo ./start.sh
Eroare: a apărut o eroare JNI, verificați instalarea și încercați din nou
Excepție în firul „principal” java.lang.UnsupportedClassVersionError: org/bukkit/craftbukkit/bootstrap/Main a fost compilat de o versiune mai recentă a Java Runtime (versiunea 60.0 a fișierului de clasă), această versiune a Java Runtime recunoaște doar fișierul de clasă versiuni până la 52.0
la java.lang.ClassLoader.defineClass1 (Metoda nativă)
la java.lang.ClassLoader.defineClass(ClassLoader.java:756)
la java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
la java.net.URLClassLoader.defineClass(URLClassLoader.java:473)
la java.net.URLClassLoader.access $100(URLClassLoader.java:74)
la java.net.URLClassLoader$1.run(URLClassLoader.java:369)
la java.net.URLClassLoader$1.run(URLClassLoader.java:363)
la java.security.AccessController.doPrivileged (metoda nativă)
la java.net.URLClassLoader.findClass(URLClassLoader.java:362)
la java.lang.ClassLoader.loadClass(ClassLoader.java:418)
la sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)
la java.lang.ClassLoader.loadClass(ClassLoader.java:351)
la sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:601)
mortimer@mineraft:/home/minecraft$
Poate cineva să facă lumină asupra a ceea ce am greșit?
Mulțumiri
[editare - adăugarea versiunii java]
mortimer@mineraft:/home/minecraft$ java -versiune
versiunea java „1.8.0_311”
Java(TM) SE Runtime Environment (build 1.8.0_311-b11)
VM server Java HotSpot(TM) pe 64 de biți (build 25.311-b11, mod mixt)
mortimer@mineraft:/home/minecraft$