Getting started
Eclipse Won't Open on Mac? How to Fix JDK Problems
Published on October 22, 20266 min read
Your course requires Eclipse, the setup guide was written for Windows, and nothing happens when you double-click it on your MacBook. Or Eclipse starts, but every project is full of red errors. Here you'll find the most common causes of Eclipse problems on a Mac, each with a fix, and a way to practise Java tonight anyway.
First: which Mac do you have?
Almost every Mac problem with Eclipse and Java comes down to one question: does your Mac have an Apple chip or an Intel processor?
- Click the Apple menu in the top left corner.
- Choose "About This Mac".
- If it says "Chip: Apple M1", "M2", "M3" or newer, you have Apple silicon. If it says "Processor: Intel", you have an Intel Mac.
Alternatively, type uname -m in Terminal. arm64 means Apple silicon, x86_64 means Intel.
Remember the answer. For Eclipse and the JDK, the Apple version is called AArch64 or aarch64, and the Intel version x86_64 or x64.
Problem 1: Eclipse won't open
macOS checks apps that don't come from the App Store. If it can't verify an app, it blocks it from starting and shows a warning.
Here's what to do:
- Only download Eclipse from the official site, eclipse.org.
- Drag
Eclipse.appinto the Applications folder and start it from there, not from the download window. - If a warning appears, close it. Then open "System Settings", go to "Privacy & Security" and scroll down to the "Security" section.
- There you'll see a note about Eclipse with an "Open Anyway" button. Click it and confirm with your password.
Since macOS 15 Sequoia, the old trick of Control-clicking a blocked app and choosing "Open" no longer works. The route through System Settings does.
Don't switch off Gatekeeper completely in Terminal, even if forums recommend it. That makes your Mac less secure for every app, not just for Eclipse.
Problem 2: You downloaded the wrong version
The download page offers two versions for macOS: AArch64 and x86_64. If you download the Intel version on an Apple silicon Mac, you'll often be asked to install Rosetta when it starts, or Eclipse runs noticeably slowly.
The fix is simple: delete the old Eclipse.app and download the version that matches your chip. Do the same with the JDK. Eclipse and the Java it starts with should have the same architecture. An Intel Eclipse with an aarch64 JDK, or the other way round, is a common cause of crashes on startup.
Problem 3: Eclipse can't find a suitable Java
According to the download page, the Eclipse Installer comes with its own Java runtime, and current Eclipse packages usually do too. If you use a download with this built-in Java, you don't need to install anything else just to start Eclipse.
It's different if you get a message like this one:
Version 1.8.0 of the JVM is not suitable for this product.
Then Eclipse has found a Java that's too old. Here's how to point it to a newer one:
- Install a current JDK that matches your chip, for example JDK 25 as a
.dmg. It goes into/Library/Java/JavaVirtualMachines/. - Right-click
Eclipse.appin the Applications folder, then choose "Show Package Contents". - Open
Contents/Eclipse/eclipse.iniwith TextEdit. - Add two lines before the line
-vmargs, with the option and the path each on its own line:
-vm /Library/Java/JavaVirtualMachines/jdk-25.jdk/Contents/Home/bin/java
- Save and restart Eclipse.
To see the exact folder name, run /usr/libexec/java_home -V in Terminal.
Problem 4: Eclipse starts, but your project is full of errors
If Eclipse runs but even the starter project from your assignment is marked red, the Java version often doesn't match what your course expects.
- Open the settings. On a Mac they aren't under "Window > Preferences" as in the Windows guide, but in the app menu under Eclipse > Settings or Eclipse > Preferences, depending on the version.
- Under Java > Installed JREs you see which Java versions Eclipse knows. Use "Add…" and "Standard VM" to add your JDK. As the folder, choose
/Library/Java/JavaVirtualMachines/jdk-25.jdk/Contents/Home. - Under Java > Compiler, set the version your course requires.
- In the project itself, right-click, choose "Properties" and then "Java Build Path" to check that the right JDK is set.
Which version applies should be in your course's setup instructions. If it isn't there, ask your teaching assistant, in the lab session or on your course forum. Don't go your own way, or your submission might not run when it's graded.
If you then see a message like "javac is not recognized" or "command not found: javac" in Terminal, javac is not recognized: causes and fixes will help.
Practise today anyway
Setting things up can eat a whole evening. That hurts when your next assignment is due on Friday. But you don't have to wait until Eclipse works to start practising.
In Jario you write Java right in the browser, on your MacBook too. You need no JDK and no Eclipse settings, because the code runs on our server. "Run" starts main, and "Check" runs tests against your code. You see right away whether it's correct and don't have to wait for your work to be graded.
Especially in a first programming course, it pays to practise each topic in small steps before the assignment. Typical topics are arrays, methods and recursion and classes and objects. Jario has tasks for them from "Easy" through "Medium" to "Hard". The AI tutor knows the task, your code and the test result and gives you hints, but deliberately not the finished solution. You write the code yourself.
You then do the actual assignment in Eclipse, as your course requires. How to use AI help for that without running into academic integrity problems is covered in AI and programming assignments. How to keep up with weekly assignments without all-nighters is in Weekly programming assignments without all-nighters.
Here's a small example of what a task on classes can look like:
public class Main { public static void main(String[] args) { Account account = new Account(100); account.deposit(50); System.out.println(account.getBalance()); }}
class Account { private int balance;
Account(int start) { balance = start; }
void deposit(int amount) { balance += amount; }
int getBalance() { return balance; }}
Output150
You'd write exactly the same thing in Eclipse. So what you learn in the browser carries straight over.
In short
- First check whether your Mac has an Apple chip or Intel, and download Eclipse and the JDK in the same version.
- If macOS blocks Eclipse, allow it under "Privacy & Security" with "Open Anyway".
- If Eclipse finds a Java that's too old, set a newer one in
eclipse.iniwith-vm. - Red projects are often caused by the Java version. Set it to what your course requires.
- You can start practising in the browser today. More in How to pass your first programming course.
Related articles to learn
- Classes and objectsJava classes and objects explained simply: fields, constructors, getters, static and records with examples. Plus common mistakes like shadowed fields.Read article
- Methods and recursionJava methods explained simply: parameters, return, overloading, varargs and recursion with examples. Plus common mistakes like a missing return.Read article
- ArraysJava arrays explained simply: create them, loop through them, use two-dimensional arrays. With examples and common mistakes like the wrong index.Read article
More posts
- Getting startedBlueJ at homeSet up BlueJ at home or practise with no installation at all: what works on a family laptop, tablet or Chromebook and how to get ready for your next test.Read more
- Getting startedjavac is not recognized'javac' is not recognized? Find the cause in two minutes and set the PATH correctly on Windows and macOS. Plus the fastest way to start practising today.Read more
- Getting startedJava without admin rightsJava without admin rights on a work laptop or school computer: which options are allowed, what works technically and how to practise every day anyway.Read more