ATM10 Java Version 2026: Java 21 vs Java 25 for All The Mods 10

Published on | Updated

ATM10 needs Java 21, the Java of Minecraft 1.21.1. Java 25 is for Minecraft 26.1 and newer, such as ATM11. How to check, install and pick Java 21 on a server.

All the Mods 10 server

All The Mods 10 needs Java 21. ATM10 runs on Minecraft 1.21.1 with NeoForge, and the start script in the pack's own server files stops with "Minecraft 1.21 requires Java 21" when it finds no Java or an older one. Java 25 only comes in with Minecraft 26.1: Mojang's version files list Java 21 for 1.21.1 and Java 25 for every 26.x release. That is why ATM11, the beta on Minecraft 26.1.2, needs Java 25 and ATM10 does not. Our Minecraft Java version guide lists the Java for every Minecraft release, and our Aikar's flags guide has the JVM arguments for Java 21 and Java 25.

Quick answer: Install Java 21, check it with java -version, and start ATM10 with it. Java 25 gets past the pack's start check, but the pack's guides do not list it for ATM10, so stay on 21. The JVM flags for ATM10 have their own page: our ATM10 JVM arguments guide.

ATM10 Java Version Requirement

ATM10 requires Java 21.

ATM10 runs on Minecraft 1.21.1 with NeoForge, and Mojang's version file for 1.21.1 lists Java 21. NeoForge's own documentation for 1.21 to 1.21.1 asks for a Java 21 JDK as well. The newest server files on CurseForge on 1 November 2026, ServerFiles-8.4.zip for ATM10 8.4, install NeoForge 21.1.265 and check your Java before the server starts: with no Java, or with a version below 21, startserver.sh stops with "Minecraft 1.21 requires Java 21" and the version it found.

Java versionATM10What happens
Java 8, 11 or 17NoThe start script stops before the server launches
Java 21YesMojang's Java for 1.21.1 and the version the ATM guides list
Java 25Not recommendedGets past the start check, but it is the Java of Minecraft 26.1 and newer

Does ATM10 Work on Java 25?

Java 25 is the Java for Minecraft 26.1 and newer. ATM11, still in beta, runs on Minecraft 26.1.2, and its server files say "Minecraft 26.1.2 requires Java 25". ATM10 is a different pack on Minecraft 1.21.1:

  • Official guidance: the ATM guides list Java 21 for Minecraft 1.21+ and do not mention Java 25
  • Start script: ATM10's script only checks that the Java version is 21 or higher, so Java 25 gets past the check. That tells you the server will try to start, not that every mod in the pack supports Java 25
  • Recommendation: use Java 21 for ATM10 servers, since that is the version Mojang lists for 1.21.1 and the one the pack's guides name

If ATM10 crashes on Java 25, switch the server to Java 21 before you look for any other cause.

How to Check Your Java Version

Run this command:

java -version

Correct output for ATM10 starts like this:

openjdk version "21.0.x"

If you see Java 17 or lower, update before running ATM10. On Debian and Ubuntu, update-alternatives --list java shows the Java versions installed from packages.

Installing Java 21

Ubuntu 22.04 and 24.04, Debian 13

sudo apt update
sudo apt install openjdk-21-jdk -y
java -version

Set as default if multiple Java versions are installed:

sudo update-alternatives --config java

Select Java 21 from the menu.

Debian 12

Debian 12 has no openjdk-21 package; it ships OpenJDK 17. Install Eclipse Temurin 21 from the Adoptium repository instead, with the commands from Adoptium's own guide:

sudo apt install -y wget apt-transport-https gpg
wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/adoptium.gpg > /dev/null
echo "deb https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" | sudo tee /etc/apt/sources.list.d/adoptium.list
sudo apt update
sudo apt install temurin-21-jdk

RHEL, Rocky Linux and AlmaLinux 9 or 10

sudo dnf install java-21-openjdk-devel

Windows

Download the Temurin 21 installer (.msi) from adoptium.net, which is the download the ATM guide links to. The installer adds Java to your PATH by default. Open a new terminal and verify with java -version.

Make the Start Script Use Java 21

If the machine has Java 25 as its default and you want to keep it that way, the ATM10 start script reads an environment variable named ATM10_JAVA with the full path of the Java to use:

ATM10_JAVA=/usr/lib/jvm/java-21-openjdk-amd64/bin/java sh startserver.sh

That path is where the openjdk-21 package on Ubuntu and Debian 13 puts Java on a 64-bit x86 machine. update-alternatives --list java shows the exact paths on yours.

On a Space-Node Server

If you run ATM10 on Space-Node's ATM10 server hosting, you pick the Java version yourself in the Startup tab of the panel. Pick Java 21. The heap lives in the pack's user_jvm_args.txt, which you edit in the panel's file manager.

JVM Arguments Once Java 21 Is Set

The Java version decides whether ATM10 starts at all. The JVM arguments decide how it runs once it does. The pack's server files ship G1 flags in user_jvm_args.txt with -Xms4G -Xmx8G, and the ATM guide's Java page also offers a Generational ZGC line for Java 21. Both sets, what each flag does and when to switch are in our ATM10 JVM arguments guide, so we do not repeat them here.

The Java-related point to remember is -XX:+ZGenerational in that ZGC line. It arrived with Java 21 (JEP 439), so a server that is secretly still on Java 17 refuses to start with "Unrecognized VM option 'ZGenerational'". On Java 24 and newer the option is obsolete (JEP 490): ZGC is always generational there, and Java prints a warning that it ignores the flag.

How Much RAM to Allocate for ATM10

PlayersServer RAMSpace-Node plan
1 to 512GBMC Special 1
5 to 1516GBMC Special 3
15+32GBMC Special 4

The official server files set -Xmx8G in user_jvm_args.txt. If your server starts through that file, Java never uses more than 8GB, whatever the plan. Raise it to fit your plan, leaving 2 to 4 GB of the plan free.

Never allocate 100% of available RAM to -Xmx. The operating system needs headroom.

Common Java Errors with ATM10

The start script stops with "Minecraft 1.21 requires Java 21": the script found no Java, or one older than 21. The full line names what it found:

Minecraft 1.21 requires Java 21 - found Java 17

Install Java 21, or point ATM10_JAVA at it as shown above.

java.lang.UnsupportedClassVersionError saying a class "has been compiled by a more recent version of the Java Runtime": you started the server without the script, on a Java that is too old. Class file version 65 means Java 21, and 61 means Java 17.

OutOfMemoryError: Java heap space: the heap is full. Oracle's troubleshooting guide notes that this is often just a heap that is too small for the application, and otherwise a sign that something keeps objects in memory. Raise -Xmx within your plan and restart.

The server crashes right after NeoForge loads, on Java 25: go back to Java 21 first and test again.

FAQ

What Java version does ATM10 use in 2026? Java 21. ATM10 runs on Minecraft 1.21.1 with NeoForge, Mojang lists Java 21 for 1.21.1, and the official start script stops if it finds anything older. Java 17 and older will not work.

Does ATM10 work with Java 25? The start script lets Java 25 through, but the pack's guides list Java 21 for Minecraft 1.21+ and say nothing about Java 25, so stick with Java 21 for stable server operation.

When do I need Java 25 instead? When you run Minecraft 26.1 or newer. Mojang's version files list Java 25 for every 26.x release, so packs on 26.1.2, such as the ATM11 beta, need it.

What JVM flags should I use for ATM10? Start with the G1 flags the pack's server files already ship and only raise -Xmx. The full comparison with Generational ZGC is in our ATM10 JVM arguments guide.

How much RAM should I set with -Xmx for ATM10? Pick the server by player count first: 12GB for 1 to 5 players, 16GB for 5 to 15, 32GB for 15+. Then set -Xmx to that RAM minus 2 to 4 GB. If the server starts through the pack's user_jvm_args.txt, the shipped -Xmx8G keeps Java at 8GB until you raise it. For a 16 GB server, use -Xmx12G to -Xmx14G.

Can I use Adoptium OpenJDK 21 for ATM10? Yes. The official ATM guides link Adoptium Temurin 21 as the Java 21 download.

Related guides: ATM10 server requirements, ATM10 RAM calculator, ATM9 vs ATM10

Sources

All opened on 31 October 2026, the ATM10 8.4 release on 1 November 2026: