United States · Grades 9 to 12 and college · BlueJ

BlueJ not working? The fixes, in the order to try them

BlueJ is built for beginners, and most of the time it is pleasantly simple: draw classes, compile, right-click to make objects. So when it refuses to open, grays out its buttons, or runs a program that seems to do nothing at all, students tend to assume they broke something. Usually they did not. The BlueJ team publishes a frequently asked questions page that covers nearly every one of these failures, and the causes are few: a missing or mismatched Java kit, a firewall blocking BlueJ’s two halves from talking, a class that has not been compiled yet, or a program quietly waiting for input. This page puts those fixes in the order that solves problems fastest.

Live teaching since 2020 · 10,000+ students · Java in BlueJ or any editor

In short

Most BlueJ problems have four causes, all covered in the official BlueJ FAQ: no Java kit found (reinstall BlueJ with its bundled JDK), a firewall or proxy blocking BlueJ’s local connection, a class that is not compiled yet (grayed options), or a program waiting silently for keyboard input in the terminal. Check them in that order. Modern Age Coders teaches this live online for US students, in a batch or one to one, and the first class is free.

Learn it with a teacher

Three Java courses for students who started in BlueJ

BlueJ is a fine place to learn objects. These courses take that understanding further, live.

Find your symptom

What you see, what it usually means, and the fix

Every row is an entry in the official BlueJ FAQ. Find the line that matches your screen, then read the fuller explanation further down.

BlueJ symptoms and fixes, from bluej.org/faq.html (read 17 October 2026)
What you seeWhat the FAQ says causes itWhat to do
“BlueJ could not find any Java systems. A JDK must be installed to run BlueJ.”No Java development kit was foundReinstall BlueJ from bluej.org; the FAQ says most installers now ship with the correct JDK included
“Bluej was unable to create a virtual machine (VM) to execute projects”Usually firewall software blocking BlueJ’s local connection; on Windows, also accented or non-English characters in the project pathAllow traffic on 127.0.0.1 for BlueJ, or move the project to a plain folder name
“The New Class and Compile buttons are greyed out”No project is openUse Open Project or New Project from the Project menu
Right-click shows Inspect grayed out, no way to make objectsThe class has not been compiledCompile the class, then right-click it again
The program runs forever and nothing happensIt is waiting for input it asked forOpen the terminal from the View menu, type the input, press Enter
On a Mac, “Creating object...” never finishesA network proxy affecting BlueJ’s local socketsAdd localhost to the bypass list in the Mac’s network proxy settings
On a Mac, the splash screen or main window never appearsA Java bug affecting some macOS systemsOpen Font Book and choose Restore standard fonts from the File menu
The window is in the taskbar but not on screenIt opened on a second monitor that is no longer connectedMove the window back to the visible screen area

Why BlueJ has a virtual machine error at all

The FAQ explains that BlueJ actually runs two Java virtual machines: one for BlueJ itself and one for your code. When you create an object, it lives in the second one, and the two talk over a network connection inside your own computer.

That design is what makes the object bench possible, and it is also why a strict firewall or a school proxy can break BlueJ even though nothing ever leaves the machine. The FAQ says communication must be allowed when both source and destination are 127.0.0.1, the loopback address.

On a school laptop

Many US districts manage student laptops centrally, so you cannot change the firewall yourself. If the virtual machine error appears on a managed machine, show the FAQ entry to your teacher or the school IT team; the fix belongs to whoever manages the device.

For Macs managed by a school, the FAQ lists the BlueJ components that must also be authorized in the management profile, which is again an IT task rather than a student one.

Source: BlueJ Frequently Asked Questions, read 17 October 2026. We are not connected with the BlueJ project.

Install or reinstall

Installing BlueJ cleanly, and what each download needs

Half of all BlueJ problems disappear with a clean install of the current version, because the installer brings its own Java with it. Here is what bluej.org lists.

BlueJ 6.0.1 downloads, from the bluej.org home page (read 17 October 2026)
SystemRequirement listedAlso offered
Windows64-bit Windows, Windows 8 or laterA standalone zip suitable for USB drives
macOSmacOS 11 or laterA separate version for Macs with Intel processors (2021 and earlier)
Ubuntu or Debian64-bit Intel, Debian 11 or Ubuntu 20.04 or laterA version for ARM64, for example Raspberry Pi
32-bit systemsNot supported by current versionsBlueJ 4.1.4
  1. Check the version you have. The current release on bluej.org is 6.0.1, released 4 September 2026. An older copy may carry bugs the team has already fixed.
  2. Pick the right file. On a Mac, check whether you have Apple silicon or an Intel processor before downloading; there are two different builds.
  3. Use the full installer, not a bare jar, unless you know you need it. The version history lists the Windows and Mac downloads as including the JDK.
  4. On a school laptop without install rights, the standalone zip for Windows runs from a folder or a USB drive.
  5. Open a project before anything else. Use Project, then New Project, so the class buttons come alive.

Is BlueJ free?

Yes. The BlueJ home page calls it a free Java Development Environment designed for beginners, and it is published under the GNU General Public License version 2 with the Classpath Exception. The source code is public.

The FAQ adds that BlueJ sends a little anonymous information, such as the BlueJ and Java versions and the operating system, to help plan development, and that a bluej.uid=private setting switches it off.

A note on the two pages

The download lists on the version history page give different minimums for the same 6.0.x installers (they mention Windows 7 and macOS 10.12) than the home page does. We print the home page figures, which are the stricter ones; if your machine sits between the two, try the installer and see.

The 6.0.0 release on 1 July 2026 added Kotlin support for editing and running code. For a Java course that changes nothing; the 6.0.1 point release only added Kotlin class templates that were missing.

Sources: bluej.org and BlueJ version history, read 17 October 2026.

Frozen or silent

When a program seems to do nothing, or shows no output

The BlueJ FAQ has an entry for a program that seems to run forever and do nothing. Usually it is working perfectly and waiting for you. Here is a tiny example that does exactly that.

A program that looks frozen · Greeter.javajava
// Greeter.java (ours): looks frozen when run in BlueJ
import java.util.Scanner;

public class Greeter {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String name = in.nextLine();   // waits here, silently
        System.out.println("Hello, " + name);
    }
}

Ours. It compiles cleanly. Run from BlueJ, it sits at nextLine() waiting for a line of input, and because it prints nothing first, there is no sign that it wants anything.

What the BlueJ FAQ says

The FAQ answers this one directly: if your program requests input, you must supply the input before the program can continue running; what is happening is that it is waiting, indefinitely, for the input it asked for.

You can open the terminal from the View menu and type into it, pressing Enter at the end, because the terminal input is line buffered.

The better fix, also from the FAQ

The FAQ’s recommended solution is to print a prompt, such as “Please enter your name”, before reading input. Printing makes BlueJ open the terminal window automatically, so the program no longer looks frozen.

It is also simply better programming: anyone running your code, including a teacher grading it, can see what it expects.

The same program, talking to its userjava
// Greeter.java, fixed (ours)
import java.util.Scanner;

public class Greeter {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        System.out.print("Your name: ");   // prompt first
        String name = in.nextLine();
        // the form feed clears the BlueJ terminal
        System.out.print('\u000C');
        System.out.println("Hello, " + name);
        System.out.println("Arguments: " + args.length);
    }
}

Called from BlueJ with { "one", "two", "three" }
Your name: Ada
Hello, Ada
Arguments: 3

Ours. We compiled and ran it with javac and java 22.0.1 from the command line, piping in Ada and passing three arguments, and checked that the form feed character the FAQ recommends was printed. In BlueJ you would call main with the array shown.

No output in BlueJ: four checks (from the BlueJ FAQ and version history)
CheckWhy
Is the terminal window open?Output goes to the terminal, which you can open from the View menu
Did the program print before it read input?Printing opens the terminal automatically; reading alone does not
Is the window off screen?After unplugging a second monitor, the terminal can open where you cannot see it
Are you on an old version?BlueJ 5.5.0 fixed a bug where the terminal sometimes did not show exceptions if the error pane had not been visible

Running main

How to run a program, with arguments, in BlueJ

BlueJ does not have a single Run button for main, which confuses students coming from other editors. The FAQ explains the BlueJ way.

  1. Compile the class. The FAQ notes that gray diagonal stripes across a class box disappear once it is compiled, so stripes mean it still needs compiling.
  2. Right-click the class box in the class diagram. Static methods, including main, appear in the menu.
  3. Choose void main(String[] args). A dialog asks for the array of strings main takes.
  4. Leave it as { } for no arguments, which is the default, an empty array.
  5. Or type arguments as an array, for example { "one", "two", "three" }, which passes three strings exactly as a command line would.
  6. Watch the terminal. Output appears there; tick Clear screen at method call in the terminal’s Options menu if old output gets in the way.

Why BlueJ works this way

BlueJ is designed around objects rather than whole programs. You can create an object from any compiled class and call its methods one at a time, without writing a main method at all, and inspect the values of its fields as you go.

For learning what a constructor does, or how two objects share data, that interactive object bench is genuinely useful, and it is the main reason teachers choose BlueJ for a first course.

Libraries and the standard classes

If your class gives you a jar file, the FAQ lists three ways to add it: the Libraries tab in Preferences, the userlib folder inside the BlueJ installation, or a folder named +libs inside your project.

To experiment with a standard class such as String or java.awt.Point, the Tools menu has Use Library Class, which lets you create objects from it directly on the bench.

When nothing else works

A reset routine, and where BlueJ keeps its settings

If BlueJ misbehaves in a way none of the entries above describe, these steps work through the remaining causes, from the least to the most disruptive.

  1. Restart BlueJ and the computer. It sounds trivial, but it clears a stuck second virtual machine.
  2. Open a brand-new project and make one class. If that works, the problem is in the old project, not BlueJ.
  3. Move the project to a folder whose path has only plain English letters and no accented characters.
  4. Update to the current version from bluej.org, using the installer that includes the JDK.
  5. Rename your settings file so BlueJ starts with defaults (locations below). Rename rather than delete, so you can restore it.
  6. Check the firewall or proxy, or ask whoever manages the computer to allow BlueJ on 127.0.0.1.
  7. Collect the debug log if you need to contact BlueJ support. On Linux, the FAQ says it is normally at ~/.bluej/bluej-debuglog.txt.
Where BlueJ stores bluej.properties, from the BlueJ FAQ (read 17 October 2026)
SystemLocation the FAQ gives
Windows (the FAQ lists Vista, 7 and 8)C:\Users\your-user-name\bluej\bluej.properties
macOS/User/your-user-name/Library/Preferences/org.bluej/bluej.properties
Linuxyour-home-directory/.bluej/bluej.properties

Git and GitHub from BlueJ

BlueJ can share a project through Git. If team actions fail even though your GitHub password is right, the FAQ explains why: GitHub no longer allows account passwords for version control operations, and you need a Personal Access Token in the password field instead.

On a school network, a proxy can also block Git. The FAQ describes passing the proxy settings to BlueJ’s Java as -D options, which is again a job for the person who knows the network.

Settings that override settings

BlueJ reads two files: bluej.defs, installed with BlueJ for every user, and bluej.properties, which is yours. The FAQ notes that properties set in bluej.properties override those in bluej.defs.

So a student’s personal file can carry an old, broken setting even after a reinstall. That is why renaming bluej.properties is on the reset list.

BlueJ in a US course

BlueJ, AP Computer Science A and the step to a larger IDE

BlueJ appears in many first Java courses in the US. Here is how it lines up with AP CSA, what College Board publishes about the exam, and how we handle graded work.

BlueJ or a larger IDE? Our comparison for students (ours, from the BlueJ pages above)
If you needBlueJA larger IDE such as Eclipse or IntelliJ IDEA
To see objects and call methods one by oneBuilt in: the object benchPossible through a debugger, less direct
A simple screen for a first courseYes, deliberately minimalMany more panels and settings
To work on large, many-file programsWorkable, limitedBuilt for it
Its own Java bundledThe Windows and Mac downloads include a JDKVaries by product
CostFree, open sourceFree options exist

What lines up with the exam

AP Central lists Unit 3, Class Creation, at 10% to 18% of the multiple-choice weighting. Designing a class, writing its constructor and calling its methods is exactly what BlueJ’s object bench makes visible.

The exam itself is fully digital and taken in College Board’s Bluebook app, not in any IDE, so BlueJ is a place to learn and practice rather than the exam environment. See our AP Computer Science A classes for preparation.

Graded work stays the student’s

When a BlueJ project is homework, our teachers do not write or fix it, and we never give answer keys. The teacher helps the student find which symptom row matches, and the student makes the change.

For a general method of finding bugs that works in any editor, see how to debug code. Students preparing for India’s ICSE board use BlueJ differently, and our ICSE BlueJ coaching page covers that course.

Sources: AP Computer Science A Course and Exam, AP Central, read 17 October 2026. AP is a trademark of College Board, which is not connected with us.

Growing with BlueJ

Four stages from first project to confident Java

Where students usually are when BlueJ first goes wrong, and where they head next.

Stages of a BlueJ learner (ours)
StageWhat it looks like
1. Setting upInstalling, opening a first project, wondering why buttons are gray
2. On the benchCreating objects by right-clicking and calling their methods
3. Writing programsUsing main, the terminal and input with a clear prompt
4. Moving onReady for a larger IDE and many-file projects

For parents

When BlueJ stops working, it is almost always the setup, not your child’s code or ability.

If the computer is a school device, the fix may need the school’s IT team, and that is normal.

For students

Print a prompt before every input. It saves you and everyone who runs your code.

Compile first, then right-click. Most grayed-out menus are an uncompiled class.

The catalogue

Nine courses for students learning Java with objects

Each one is a live course with the same teacher every week, taken in a group or alone.

I

Java

Teens

BNWF / JAVA / 01

Java for teens

Objects first, then whole programs.

Open the syllabus

BNWF / JAVA / 02

AP Computer Science A

Classes, lists and arrays for the exam.

Open the syllabus

BNWF / JAVA / 03

Problem solving for teens

Thinking through a task before coding it.

Open the syllabus
II

Next languages

Teens

BNWF / NEXT / 01

Python for teens

Quick scripts and data, in fewer lines.

Open the syllabus

BNWF / NEXT / 02

AP Computer Science Principles

The broader AP course and its Create task.

Open the syllabus

BNWF / NEXT / 03

Git and GitHub for teens

Share BlueJ projects the proper way.

Open the syllabus
III

College

Ages 18 and up

BNWF / PRO / 01

Java for college

The intro sequence and what follows it.

Open the syllabus

BNWF / PRO / 02

Data structures and algorithms

Lists, trees and graphs in Java.

Open the syllabus

How lessons run

Live Java lessons at times that suit US students

Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays.

Weekdays

After-school times across the US time zones.

Weekends

A weekly slot that leaves weekdays free.

1-on-1

Arranged around your class and test dates.

A teacher who stays

The same person every week.

BlueJ, shared

We see your class diagram live.

Setup help included

Install and settings problems count too.

Concepts, not answers

Your graded work stays your own.

Online, nationwide

Wherever in the US you study.

Batch or private

Fifteen to twenty learners, or one to one.

Student work

Programs our Java students have made

Built by learners who once had their own BlueJ troubles. More are on the student labs page.

NutriLife AI nutrition coach project screenshot

AI and ML

NutriLife

An AI nutrition coach that reads what you eat and works you toward a target.

by Bhavya · Open it

Misti AI chatbot for maths and coding screenshot

AI and ML

Misti

A chatbot that answers mathematics and programming questions, built and deployed by a student.

by Harshit · Open it

GuardianX AI internet safety assistant screenshot

AI and ML

GuardianX

An assistant that helps a young person recognise unsafe situations online.

by Vivaan · Open it

SkyCast weather forecast application screenshot

Web app

SkyCast

A weather forecasting site with live conditions for any location.

by Krish

Fees

Fees

BlueJ is free and so is Java. The only cost is the live teaching, which is paid month by month in US dollars, with no long contract and no charge for stopping when a month is over.

Free first class

USD 0

no card required

  • A free first lesson
  • Bring the project that will not run
  • No card asked for
Book it

Group batch

USD 100

a month, billed in US dollars

  • Fifteen to twenty in a batch
  • The same teacher each week
  • Your choice of batch
  • Paid each month
Start here

One to one

USD 150

a month, billed in US dollars

  • One student, one teacher
  • Times you choose
  • Paced to your course
Enquire

What families say

Rated 4.9 across 547 Google reviews

Google reviews from families, quoted exactly.

★★★★★

"The one step solution for my son. Modern Age Coders make learning coding so simple that kids love it. The teachers explain complex concepts clearly with practical exercises and interactive content."

Ria Mukherjee

Parent

★★★★★

"Modern Age Coders has been a game-changer for me. I struggled to grasp IT concepts and coding before joining, but their classes transformed everything. I can now confidently write complex programs with ease."

Samriddha Mondal

Student

★★★★★

"One of the most wonderful education centres out there. Education is not limited to school syllabus but focuses on skill development."

Vansh Agarwal

Student

★★★★★

"My child Dhairya is really enjoying the Modern Age Coders classes. This is his first online class and he eagerly looks forward to it. I can already see his improvement, and the teachers are very cooperative."

Sonam Oswal

Parent of Dhairya

★★★★★

"Modern Age Coders have wonderful teachers who teach in a clear, easy and practical way. The teacher boosts students' confidence and inspires them to learn without hesitation."

Sonu Goyal

Parent

★★★★★

"I highly recommend this computer coding class! The teachers are incredibly knowledgeable and passionate about coding."

Ritu Kedia

Parent

Questions from students

BlueJ not working: common questions

Why is BlueJ not working?

The official BlueJ FAQ points to a few causes: no Java development kit found, firewall or proxy software blocking BlueJ's connection to its own second virtual machine, a class that has not been compiled, or a program waiting for input. Reinstalling the current BlueJ, which includes a JDK, fixes many cases.

What does BlueJ could not find any Java systems mean?

It means no JDK was found, and the FAQ says a JDK must be installed to run BlueJ. The FAQ also says most BlueJ installers now ship with the correct JDK included, so downloading the current installer from bluej.org is the simplest fix.

How do I fix Bluej was unable to create a virtual machine?

The FAQ says firewall software is the usual cause. BlueJ needs to communicate when both source and destination are 127.0.0.1. On Windows, accented or non-English characters in the project path can also cause it, so move the project to a plain folder name.

Why is my BlueJ program not showing output?

Output appears in the terminal window, which you can open from the View menu. If the program reads input before printing anything, it can look frozen while it waits. Print a prompt first; the FAQ notes that printing opens the terminal automatically.

Why are the New Class and Compile buttons grayed out?

No project is open. The FAQ says to use Open Project or New Project from the Project menu first, after which you can create and compile classes.

How do I run main in BlueJ?

Compile the class, right-click it in the class diagram and choose the main method. A dialog asks for the String array; leave it as { } for no arguments, or type something like { "one", "two", "three" } to pass three.

Is BlueJ free?

Yes. The BlueJ home page describes it as a free Java Development Environment designed for beginners, released under the GNU General Public License version 2 with the Classpath Exception.

Does BlueJ work on a Chromebook or a 32-bit computer?

The BlueJ home page lists downloads for 64-bit Windows, macOS and Debian or Ubuntu Linux, and says BlueJ requires a 64-bit operating system; for 32-bit systems it points to BlueJ 4.1.4. It lists no ChromeOS download.

Will you fix my BlueJ homework?

No. We do not write or repair graded assignments or provide answer keys. A teacher helps you find the cause and teaches the idea behind it, so you can make the change yourself.

When are live Java classes for US students?

Weekdays or weekends, flexible. Choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays.

How much are the classes?

The first lesson is free. After that, teaching is paid monthly, and the fees section of this page shows the amount in US dollars.

Elsewhere on this site

Related pages

More for US students learning Java.

Coding classes in the USA

Our hub for American students and families.

How to debug code

Finding mistakes in any language.

Java classes for teens

The teen Java course.

AP Computer Science A classes

Live AP CSA preparation.

Java constructors explained

What happens when you create an object.

Java for beginners

A first course from zero.

Eclipse Java help for students

Eclipse for Java students: install, run, read errors, fix Java version and memory.

IntelliJ and PyCharm free for students

IntelliJ IDEA and PyCharm for students: free core, student license, setup fixes.

VS Code setup for students

Set up VS Code for Python and Java, and fix the errors students hit.

Start here

Book a free first lesson

Tell us what BlueJ is doing, or not doing, and which course you are taking. The teacher looks at your setup with you first, then moves on to the Java itself.

For a picture of a real lesson, see how we teach; every course on our course list has its syllabus published.

WhatsApp us · +91 91233 66161 · connect@modernagecoders.com

All our classes are live online sessions with teachers who work from India; there is no campus near you to drop in on. The quickest way to reach us is WhatsApp.

A free first lesson with no card details needed.

Want a class sooner? Book a priority demo

A priority demo is a full class of about 45 to 60 minutes. After the class the mentor sends a written skill report and a personal learning roadmap on WhatsApp. If you enrol, the demo fee is adjusted against your first month's fee. Share your demo Order ID with us on WhatsApp and we take it off.

Book a priority demo

Keep exploring Modern Age Coders

Related courses and guides

Free resources

From the blog

Start here

Free classPriority demoCall us