iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
Prefer not to run the server on your own PC? Godlike.Host offers hosted Minecraft Java servers with free DDoS protection and up to three free backups a day.
Use the Java runtime required by the exact Minecraft server release. Java 17 is the minimum for Minecraft 1.18 through 1.20.4, while Minecraft 1.20.5 and later require Java 21 in the documented compatibility mapping. A typical 1.21 server therefore needs Java 21. Older releases have lower floors, and future releases can raise them again, so the server project’s release notes take precedence over a general chart.
Java requirements by Minecraft version
The Java version is a compatibility requirement, not a performance recommendation. The server JAR is compiled for a particular Java level. A runtime below that level cannot load the classes, even if the computer itself is powerful enough. Install a runtime that meets the minimum shown here, then confirm that the same runtime is used when the server starts.
Recommended Free Tools
| Minecraft server release | Minimum Java | What to use in practice |
|---|---|---|
| 1.12 through 1.16.5 | Java 8 or newer | Java 8 is the compatibility floor. Use a newer release only if the server software, mods and plugins explicitly support it. |
| 1.17 through 1.17.1 | Java 16 or newer | Use Java 16 or the project-tested newer runtime for the complete server stack. |
| 1.18 through 1.20.4 | Java 17 or newer | Java 17 is the normal baseline for these releases. |
| 1.20.5 and newer in the documented mapping | Java 21 or newer | Java 21 is the normal choice for 1.20.5, 1.20.6 and the 1.21 family. |
| Spigot 26.1 (current site statement) | Java 25 or newer | Treat this as a version-specific project requirement and verify the exact build before installation. |
“Or newer” means the runtime is not below the stated floor; it does not mean every newer Java release is automatically compatible. A legacy mod loader, plugin, native library or custom launcher can impose a narrower supported range. When a server project names a tested Java distribution or version, follow that guidance instead of choosing solely from the table.
Answers to the common version questions
Does Minecraft 1.20.1 need Java 17?
Yes. Minecraft 1.20.1 falls within the 1.18–1.20.4 range, whose minimum is Java 17. Java 8 or Java 16 is below the documented floor and can fail before the world loads. Java 17 is the conservative choice for a vanilla 1.20.1 server; check every mod and plugin for its own compatibility before moving to a newer runtime.
#1 Best Overall
- Play and share with friends on console, mobile and Windows 10
- discover community creations in the new in-game store
- access new mini games and game modes through servers
Do you need Java 21 for a 1.21 server?
Yes, Java 21 is the practical baseline for the 1.21 family under the documented mapping. The same baseline applies to Minecraft 1.20.5 and later releases covered by that mapping. If a particular 1.21 server implementation publishes a different tested runtime, use its statement for that build.
Can an old Java installation run a new server?
Only when it meets the server’s minimum. A Java 17 installation cannot launch a server compiled for Java 21, and a Java 8 installation cannot satisfy the Java 17 requirement for modern releases. Installing multiple Java versions is fine; the important detail is which executable the launch script, service or hosting panel actually calls.
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Why Minecraft servers depend on a specific Java release
Minecraft: Java Edition servers are distributed as JAR files. Mojang’s server documentation states: “For Java Edition: You must have a compatible Java Runtime Environment (JRE) installed to launch the server .jar file.” The Java launcher must also be available from the command line; on Windows, that commonly means adding the selected Java installation to PATH.
Rank #2
- Learn your way around one block at atime in the new tutorial mode
- Craft all sorts of items from boats todiamond armor and create enormousstructures
- Team up with friends in eight-playeronline multiplayer and four-player splitscreen modes
During compilation, the server and its libraries are written for a target Java class-file level. At startup, the runtime checks that level. If the installed runtime is older, it cannot understand the class format and exits rather than starting with partial functionality. This is why changing memory flags or reinstalling the world does not fix a Java-version error.
The minimum Java version concerns compatibility only. It does not promise a particular tick rate, player capacity or memory requirement. Performance depends on CPU speed, simulation distance, entity counts, storage, networking, plugins and configuration.
Vanilla, Paper and Spigot: whose requirement applies?
Vanilla server
For the official server JAR, start with the Minecraft release’s Java baseline in the table. Identify the exact release rather than relying on a launcher label such as “latest,” because a small-version change can move the requirement. Mojang also publishes security and compatibility notices for individual releases.
Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchPC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Rank #3
- ENGAGING AND COOPERATIVE: Experience the thrill of Minecraft in a unique and cooperative board game format. Perfect for teams of 2 to 4 players, the game encourages joint strategies and shared victories
- EVER-CHANGING GAMEPLAY: With a map that changes every time you play, this game offers high replay value, making every game a unique and unpredictable experience
- QUALITY COMPONENTS: The game includes 25 wooden blocks, 18 world tiles, 4 inventory boards, 6 player cards, 9 buildings, 12 mob tokens and more. All components are crafted with care to enhance your gaming experience
- AGE-APPROPRIATE CHALLENGE: Aimed at ages 7 and up, this game offers a great balance of fun and challenge, making it a great choice for family game nights, parties, or gatherings
- TRUSTED BRAND: With over 130 years of experience, Ravensburger ensures top quality games that stimulate the mind, engage the hands, and touch the heart
Paper
Paper is version-specific server software built around Minecraft releases. Its compatibility guidance says Minecraft 1.20.6 requires Java 21, which is consistent with the broader 1.20.5-and-newer mapping. For any other Paper build, read that build’s installation or compatibility page and check the required Java version alongside the Minecraft version.
Spigot
Spigot’s installation guidance directs operators to use Java compatible with the Minecraft version. Its current site reports Java 25 or later for Minecraft 26.1. That statement should be treated as a requirement for that particular project version, not as a rule that all Spigot releases need Java 25. Confirm the exact build number and its release notes before upgrading a production server.
Mods, plugins and launchers
The server implementation is only one part of the stack. A mod loader, plugin, performance library or wrapper script can require a different Java level or can be incompatible with a runtime that the core server accepts. Check the loader and every critical extension when changing Java. If one component has a stricter requirement, use a runtime that satisfies the whole stack, or remove and replace the incompatible component.
Rank #4
- Minecraft Dungeons Hero Edition includes the Hero Pass DLC content: a Hero Cape, two player skins, and a chicken pet. It also includes the Jungle Awakens and Creeping Winters DLC packs.
- Dungeon Creeper Battle new-and-nasty mobs in this all-new action-adventure, inspired by classic dungeon crawlers.
- Multiplayer Up to four players can team up and fight together in co-op mode.
- Power Up Unlock dozens of unique items and weapon enchantments for devastating special attacks.
- Options Personalize your character, then fight up-close and personal with melee swings, hang back with ranged attacks, or tank your way through swarms of mobs, by heavy armor
How to select and verify Java before starting the server
- Identify the exact release. Read the server JAR filename, launcher profile, download page or hosting-panel version selector. Record the full number, such as 1.20.1, 1.20.6 or 1.21.x, rather than just “1.20” or “1.21.”
- Check the implementation’s documentation. Use the Minecraft baseline for vanilla. For Paper, Spigot or another implementation, check the build’s own compatibility statement. If the project names a tested Java distribution, prefer it over an untested alternative.
- Install a JRE or JDK that meets the floor. A JRE supplies what is needed to launch a JAR. A JDK includes the runtime plus developer tools and is useful if you compile plugins or server software. For a 1.20.5–1.21-era server, Java 21 is the normal starting point; for a 1.18–1.20.4 server, Java 17 is the normal starting point.
- Verify the executable in the server’s environment. Open the same account, terminal, script or service context that will launch the server and run
java -version. This catches a common mistake: a newer Java is installed, but the shell or service still resolves an older executable throughPATH. - Start the server with that executable. Use the selected Java command in the launch script or hosting panel. Do not assume that changing the system default changed a scheduled task, container, Windows service or Linux service account.
- Confirm a clean startup. The server should reach its normal ready state and create or open the world. Stop it cleanly before changing configuration, and keep a backup before upgrading the server JAR or Java runtime.
On Windows, Mojang notes that Java may need to be configured in PATH. On a managed host, the equivalent setting is usually a Java-version selector in the server panel; if the required version is unavailable, ask the host whether the plan supports it before uploading a new JAR.
Understanding “UnsupportedClassVersionError”
This error means the server JAR (or one of its libraries) was compiled for a newer Java version than the runtime that launched it. The remedy is to raise the runtime to the required level, not to edit the world or increase RAM.
Use the error to find the failing side
- If the message says the class was compiled by a newer version of the Java Runtime, the active runtime is too old.
- If
java -versionshows the expected version but the error remains, the server may be launched by a different executable, service account, container image or hosting-panel setting. - If the server starts after a Java upgrade but a plugin fails, the plugin may have its own compatibility limit. Test the server without that plugin, then install a release that supports the selected Java.
Correct the path or service mismatch
- Run
java -versionin the server directory using the same launch method used in production. - Inspect the startup script for an absolute Java path or a variable that overrides
PATH. - For a scheduled task or service, check the account under which it runs; its environment can differ from your interactive terminal.
- For a hosting panel or container, select the required Java image or runtime and restart the server.
- Run the server again and save the complete log if the error persists. The first class named in the exception often identifies whether the core server or an extension is at fault.
JRE versus JDK: which one should a server owner install?
Launching a Minecraft server needs a Java runtime environment. A JRE is therefore sufficient when you only run the server JAR. A JDK contains that runtime plus tools for compiling Java code, inspecting classes and building plugins or server software. Choose a JDK if you develop or compile extensions on the same machine; otherwise, a supported JRE keeps the installation smaller and simpler.
Best Value
- Official Minecraft Puzzle Game – Hands-On Logic Game Based on the Best-Selling Video Game.
- 40 Strategic Challenges – Use the Actions to Navigate & Solve Increasingly Tough Puzzles.
- No Screens, Just Strategy – Promotes Problem-Solving with Off-Screen Minecraft Fun.
- Perfect for Ages 8+ – Great Gift for Minecraft Fans Who Love a Challenge!
- Trusted by Parents Worldwide – With Over 50 Million Sold, ThinkFun is the World's Leading Manufacturer of Brain Games and Mind-Challenging Puzzles!
The distinction does not change the Minecraft requirement. A Java 21 JRE and a Java 21 JDK provide the same Java 21 runtime level for launching, while a Java 17 JDK still cannot launch a server that requires Java 21.
Upgrading Java without breaking a world
Changing Java and changing Minecraft are separate operations. A Java upgrade normally leaves world files untouched, but a server-version upgrade can migrate data and may be difficult to reverse. Before either change, stop the server cleanly and make a separate backup of the world, configuration, plugins, mods and launch scripts.
- Keep the old Java installation until the new runtime has passed a test startup.
- Record the current Java version with
java -versionand note the exact server build. - Test a copy of the world first when moving to a new Minecraft release.
- Check plugin and mod release notes for Java and Minecraft compatibility.
- Do not delete the old runtime until scheduled tasks, services and restart scripts all point to the intended executable.
Security can also determine which Minecraft build you should run. Mojang’s 1.21.1 notice recommends that server owners upgrade to address critical exploits and says players on 1.21 can join 1.21.1 servers. Follow the security notice for your release while preserving a tested backup and compatible Java runtime.
Self-hosting versus managed hosting
Running the server yourself
Self-hosting gives you control over the Java executable, launch flags, backups and update schedule. You are also responsible for installing the runtime, keeping PATH or service paths correct, configuring the firewall and handling port forwarding so external players can connect. Mojang notes that firewall and port-forwarding configuration may be required for outside players.
Using a managed host
A managed host usually supplies the operating system, Java runtime and network setup through a control panel. Select the Java version that matches the server build before starting it. If the panel offers only an older runtime, do not force a modern JAR to run; request the required runtime or choose a server build supported by the available option. The host’s panel setting is authoritative for that environment, even when your local computer has another Java version installed.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Pre-launch checklist
- Exact Minecraft and server-implementation version identified.
- Minimum Java requirement checked against the project’s own documentation.
- JRE or JDK installed at or above that minimum.
java -versionrun in the same environment that launches the server.- Mod, plugin and loader requirements checked.
- World and configuration backups completed before upgrades.
- Firewall and port-forwarding rules reviewed for external access.
- Startup log reaches the normal ready state without class-version errors.
For most current installations, the practical rule is simple: use Java 17 for Minecraft 1.18–1.20.4 and Java 21 for 1.20.5–1.21-era servers, then verify the exact Paper, Spigot, mod or plugin build. If a future release raises the baseline—as the Spigot 26.1 statement does—follow that release’s requirement instead of assuming Java 21 remains sufficient.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

