I had a bit of a drama trying to upgrade Java to the current version of the Minecraft server (v1.18) because the server was originally running Ubuntu 19.x, so I changed to Ubuntu 20.04 after finding a location where I could update all the packages and do the work.
After that, I installed the JRE, and this is the same command that displays the current version:
mortimer@mineraft:/home/minecraft$ sudo apt-get install default -jre Reading package lists... Done Building dependency tree Reading state information... Done default -jre is already the newest version (2: 1.11 - 72). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
The same with the JDK:
mortimer@mineraft:/home/minecraft$ sudo apt-get install default -jdk Reading package</span> lists... Done Building dependency tree Reading state information... Done default -jdk is already the newest version (2:1.11-72). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Running update-alternatives:
mortimer @mineraft:/home/minecraft$ sudo update-alternatives --config java There are 4 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 auto mode 1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode 2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode 3 /usr/lib/jvm/jdk-16.0.1/bin/java 0 manual mode * 4 /usr/local/java/jre1.8.0_311/bin/java 1 manual mode Press <enter> to keep the current choice[*], or type selection number:
When I execute my Q&D start command, however:
mortimer@mineraft:/home/minecraft$ cat start.sh #!/bin/bash sudo java -Xmx6G -Xms4G -jar /home/minecraft/spigot-1.18.jar nogui > /dev/console
The server sends me a beautiful error message that says:
mortimer@mineraft:/home/minecraft$ sudo ./start.sh Error: A JNI error has occurred, please check your installation and try again Exception in thread "main" java.lang.UnsupportedClassVersionError: org/bukkit/craftbukkit/bootstrap/Main has been compiled by a more recent version of the Java Runtime(class file version 60.0), this version of the Java Runtime only recognizes class file versions up to 52.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:756) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:473) at java.net.URLClassLoader.access$100(URLClassLoader.java:74) at java.net.URLClassLoader$1.run(URLClassLoader.java:369) at java.net.URLClassLoader$1.run(URLClassLoader.java:363) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:362) at java.lang.ClassLoader.loadClass(ClassLoader.java:418>) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355) at java.lang.ClassLoader.loadClass(ClassLoader.java:351) at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:601) mortimer@mineraft:/home/minecraft$
That is my Jave version:
mortimer@mineraft:/home/minecraft$ java -version java version "1.8.0_311" Java(TM) SE Runtime Environment(build 1.8.0_311-b11) Java HotSpot(TM)64-Bit Server VM(build 25.311-b11, mixed mode) mortimer@mineraft:/home/minecraft$
Any help will be appreciated. Thanks!
3 Answers
If you want to run Minecraft: Java Edition version 1.18, you need Java 17 installed on your system. If Java is only used for Minecraft, you can remove your current Java version by running the following commands in the terminal:
sudo apt remove default-jre default-jdk
sudo apt autoremove
After uninstalling Java, you can install OpenJDK 17 by running the following commands:
sudo apt update
sudo apt install openjdk-17-jre
It’s worth noting that we don’t install the JDK because it’s used for compiling Java programs, and you won’t need it to run Minecraft. Finally, you can check the table to verify the corresponding Java version required for different Minecraft versions:
Minecraft Version | Java Version |
---|---|
1.16 | 16 |
1.17 | 16 |
1.18 | 17 |