How to Install Java 21 with JavaFX for MCA Selector

You only need this guide if you run MCA Selector from the universal .jar. The jar is a Java application with a JavaFX interface, and the official installation guide is specific about what it needs: a 64-bit JRE 21 or newer, with JavaFX either pre-packed or installed separately. Most “MCA Selector won’t start” problems are a Java version or a missing-JavaFX problem, and both are fixable in a few minutes.

Step 1: Check what Java you have

java -version

The version line needs to say 21 or higher, and the runtime needs to be 64-bit. If the command is not found, or reports Java 8, 11 or 17, your Java is too old for current MCA Selector releases: the failure you will see is UnsupportedClassVersionError, which simply means the program was built for a newer Java than the one trying to run it. The official requirements also call for at least 6 GB of RAM; with less, assign more memory to the JVM with the -Xmx argument — assigning 4 GB is the recommended starting point.

Step 2 (easiest): Install a runtime with JavaFX pre-packed

The official Wiki recommends using a JRE that already bundles JavaFX, naming Azul Zulu JRE-FX 21 as the example. Download the 21 (or newer) JRE-FX build for your operating system and architecture, install it, and the universal jar will start with a double-click or with:

java -jar mcaselector-2.9.jar

This route skips every module-path flag, which is where most manual setups go wrong.

Step 3 (alternative): Add JavaFX separately

If your JRE 21+ does not include JavaFX, download the JavaFX SDK separately and point Java at it when launching, exactly as the official Wiki documents:

java --module-path <path-to-javafx>/lib --add-modules ALL-MODULE-PATH -jar mcaselector-2.9.jar

Replace <path-to-javafx> with the folder where you unpacked the JavaFX SDK. On Linux, many distributions also offer an openjfx package that provides JavaFX system-wide.

Errors this fixes

  • UnsupportedClassVersionError — your Java is older than 21. Install a current JRE.
  • “Missing JavaFX” dialog / Fails to find JavaFX (GitHub issues #379 and #518) — the runtime has no JavaFX. Use a JRE-FX build or the module-path command above.
  • Crash on Java 8 with NoClassDefFoundError: javafx/scene/paint/Color (issue #6) — same root cause: far too old a runtime, with no JavaFX at all.

Who does not need any of this

If you use the Windows .exe installer, you never have to touch Java: since version 2.8 the installer pre-packages the Java runtime, and it no longer needs an internet connection to fetch it. On macOS and Linux, the native .dmg, .deb and .rpm packages are likewise the easiest path — see the Mac and Linux install guides. The jar remains the flexible option for unusual setups, and it is the only one that needs a runtime you manage yourself.

Download MCA Selector 2.9

The universal jar is on the download page with its SHA-256 hash, or download mcaselector-2.9.jar from the official GitHub release.

Back up your world first: MCA Selector writes deletions and NBT changes straight to disk and they cannot be undone, so copy your world folder somewhere safe before you edit it.

Related guides

Similar Posts