The top 11 Free IDE for Java Coding, Development & Programming

What Java IDE is good for programming?

What Java IDE is good for programming?

At IDR Solutions we spend a lot of our time working with Java as our Java PDF Library, and PDF to HTML5 Converter and Java Image Library are written in Java.

Our developers spend a lot of time buried in Java code and we use a a variety of different IDEs (Intergrated Development Environments) to develop Java code, so I thought it would be good to compile a list of the best free IDEs out there for Java programmers, developers and coders.

In this article I will be taking a look at 11 different IDEs. Some are used by us at IDR Solutions and others are worth considering if you like to experiment with alternative Java IDEs. Everyone has different requirements and we feel one of the strengths of the Java world is the choice available.

These IDEs offer a variety of features, like: building Java applications, TestNG, debugging, code inspections, code assistance, JUNIT testing, multiple refactoring, visual GUI builder and code editor, Java, Maven build tools, ant, do data modelling and build queries, and more.


NetBeans is an open source Integrated Development Environment written in Java and is one of IDR Solutions’ favourite IDEs for Java coding.

The NetBeans IDE supports development of all Java application types (Java SE, JavaFX, Java ME, web, EJB and mobile applications) out of the box. NetBeans is modular in design meaning it can be extended by third party developers who can create plugins for NetBeans to enhance functionality (Our PDF Plugin for NetBeans is a good example).

The NetBeans IDE can be used to develop in Java, but also supports other languages, in particular PHP, C/C++, and HTML5.

NetBeans features include an Ant-based project system, support for Maven, refactoring, version control (supporting CVS, Subversion, Git, Mercurial and Clearcase) and is also released under a dual license consisting of the Common Development and Distribution License (CDDL) v1.0 and the GNU General Public License (GPL) v2.

NetBeans is cross-platform and runs on Microsoft Windows, Mac OS X, Linux, Solaris and other platforms supporting a compatible JVM.

NetBeans can also be used for working with Cloud applications, this useful guide covers how to use the NetBeans IDE with the Google App Engine.

If you would like to find out more about NetBeans we have a series of articles which includes lots of tips and tutorials.


Eclipse is another free Java IDE for developers and programmers and it is mostly written in Java. Eclipse lets you create various cross platform Java applications for use on mobile, web, desktop and enterprise domains.

Its main features include a Windows Builder, integration with Maven, Mylyn, XML editor, Git client, CVS client, PyDev,  and it contains a base workspace with an extensible plug-in system for customizing the IDE to suit your needs.  Through plugins you can develop applications in other programming languages some of which include C, C++, JavaScript,, Perl, PHP, Prolog, Python, R, Ruby (including Ruby on Rails framework), to name just a few.

Eclipse is available under the Eclipse Public License and is available on Windows, Mac OS X and Linux.

IntelliJ IDEA Community Edition

IntelliJ IDEA Community Edition is a free Java IDE (Integrated Development Environment) mainly used for Android app development, Scala, Groovy, Java SE and Java programming. It is lightweight in design and comes with useful features like JUnit testing, TestNG, debugging, code inspections, code completion, support for multiple refactoring, Maven build tools, ant, visual GUI builder and code editor for XML and Java.

There are some features missing from the Community Edition but if you require more you can buy a license to unlock all the features.

IntelliJ Idea Community Edition is is released under the Apache 2 License.

Android Studio

Android Studio from Google is mainly designed for developing on the Android Platform. However it is capable of running and editing some Java code.

Originally it was built on the IntelliJ IDEA Community Edition created by JetBrains, and features a Flexible Gradle-based build system, build variants and multiple APK generation, Expanded template support for Google Services and various device types, Rich layout editor with support for theme editing and Lint tools to catch performance, usability, version compatibility, and other problems.

It also comes with ProGuard and app-signing capabilities and also features Built-in support for Google Cloud Platform and projects can be configured to use Java Development Kit (JDK) 6 or JDK 7.

Android Studio is freely available under the Apache License 2.0 and it is available for download on Windows, Mac OS X and Linux and replaced Eclipse as Google’s primary IDE for native Android application development.

Enide Studio 2014

Enide Studio 2014 (version 0.11-preview) was initially released as a stand-alone product for all operating systems. However later changes saw it develop a Tool Suite for Node.js, JavaScript and Java Development which is available from the Eclipse plugin store and from the main website.

Enide Studio 2014 Plugin includes:
– Nodeclipse 0.17, – Chrome Development Tools, AngularJS for Eclipse, TernIDE, Eclipse WTP WebResources, TCF Terminals, MarkDown (*.md) Editor, – GitHub Flavored Markdown (GFM) Viewer, various themes, Nodeclipse EditBox, RestClient Tool.  StartExplorer, Git Add-on, Maven, Gradle integration, Minimalist Jade Editor and more..


BlueJ is an integrated development environment (IDE) for the Java programming language. It has been mainly developed for educational purposes, but is also suitable for those who wish to do small-scale software development. It runs with the help of a JDK (Java Development Kit).

BlueJ is mainly developed for the teaching of object-oriented programming, and its design differs from other development environments as a result.

The main screen graphically shows the class structure of an application under development and objects can be interactively created and tested. This interaction facility, combined with a clean, simple user interface, allows easy experimentation with objects under development and this allows beginners to get started more quickly, and without being overwhelmed.

Newbie users can check values and call methods on them, pass them as parameters and more and Java expressions can be invoked without compiling meaning BlueJ is a powerful graphical shell/REPL for Java.

The BlueJ project is free and open source software, licensed under GNU GPL with the classpath exception and there are popular textbooks designed for teaching introductory university/college courses with BlueJ, and a site full of teaching resources and is also can run on Windows, Mac OS X, Linux and other platforms which run Java. It can also run without installation from a USB stick.


jEdit is a text editor with hundreds (counting the time developing plugins) of person-years of development behind it. Most people argue where jEdit beats many expensive development tools for features and ease of use is that the jEdit core comes with a built-in macro language; an extensible plugin architecture. Hundreds of macros and plugins are available.

There is also an auto indent function, and syntax highlighting for more than 200 languages, support for a large number of character encodings including UTF8 and Unicode, folding for selectively hiding regions of text, Word wrap, and more.

It can also  be used for source code editing, search and replacing, file management. jEdit is written in Java, so it runs on Mac OS X, OS/2, Unix, VMS and Windows, and it is released as free software with full source code, provided under the terms of the GPL 2.0.


jGRASP is a lightweight IDE primarily created for automatic generation of software visualizations to improve the comprehensibility of software. It is capable of producing static visualizations of source code structure and visualizations of data structures at runtime and jGRASP produces Control Structure Diagrams (CSDs) for Java, C, C++, Objective-C, Python, Ada, and VHDL; Complexity Profile Graphs (CPGs) for Java and Ada; UML class diagrams for Java; and has dynamic object viewers and a viewer canvas that work in conjunction with an integrated debugger and workbench for Java.

The viewers have a built in feature that allows it to identify data structures which allows it to recognize objects that represent traditional data structures such as stacks, queues, linked lists, binary trees, and hash tables and display this appropriately.

jGRASP is implemented in Java and was developed by the Department of Computer Science and Software Engineering in the Samuel Ginn College of Engineering at Auburn University.

It can run on any platform that can run a Java Virtual Machine (Java version 1.5 or higher). At present the jGRASP web site offers downloads for Windows, Mac OS, and as a generic ZIP file suitable for Linux and other systems.


JSource is a free Java IDE and is a good option for Java developers and programmers.

It is useful for creating cross-platform Java applications for various domains and is extremely lightweight. You can use JSource to run, compile, edit and create Java files. Its main features are syntax highlighting for multiple languages and Java Swing components. In version  2.0 of JSource you can use jEdit syntax packages and can incorporate other open source Java tools used for rapid development. These tools have been modified to work with the core JSource structure.

JSource is available under a GNU General Public License version 2.0 (GPLv2).


JDeveloper is an IDE supplied by the Oracle Corporation and released as freeware. It offers various features for development in Java, XML, SQL and PL/SQL, HTML, JavaScript, BPEL and PHP. JDeveloper can be used for coding, debugging, optimization and profiling to deploying. JDeveloper integrates with the Oracle Application Development Framework (Oracle ADF) – an end-to-end Java EE-based framework that further simplifies application development.

JDeveloper comes in 3 flavors which include the Java Edition, J2EE edition and Studio Edition which comes with a whole different set of features.

In terms of the Java Edition what is included out of the box is Java SE 6 Support, Code Editor, Code Navigation, Refactoring, compatibility with Swing,Unit Testing, Version Control, Auditing & Metrics,Debugging, Profiling,Ant Support, Maven Support,XML Support and Open API & Extensions.

The same IDE platform also serves as the basis of another Oracle product, SQL Developer.


DrJava is an extremely lightweight development environment that can be used for writing Java programs. It has been designed primarily for students, and provides an intuitive interface and the ability to interactively evaluate Java code.

Its main feature are for it to be used as a unit testing tool, a source level debugger, an interactive pane for evaluating text of the program, intelligent program editor and can be used for more depending on your requirements.
It is available for free under the BSD License, and it is under active development by the JavaPLT group at Rice University.

Hopefully you’ve found this guide on the best IDE’s for Programming, developing and coding Java useful.

What IDE do you use, let us know!

See our notes from NetBeans day at JavaOne 2017 here.

If your interested in IDE articles take a look at:

We now have a series of articles on what is new in Java 9:

This post is part of our “Java Articles Index” series. In these articles, we aim to explore the world of Java and JavaFX. Have a look through!

If you’re a first-time reader, or simply want to be notified when we post new articles and updates, you can keep up to date by social media (TwitterFacebook and Google+) or the  Blog RSS.

Related Posts:

The following two tabs change content below.

Alex Marshall

Head of Marketing at IDR Solutions
Alex Marshall is a marketeer, web developer and designer and enjoys being creative and has a keen interest in technology, and is fascinated by both new hardware and software. He also likes retro technology, classic cars and in his spare time enjoys traveling. He is immersed in the world of Java, PDF and HTML5 but loves to explore other areas in the world of tech.

About Alex Marshall

Alex Marshall is a marketeer, web developer and designer and enjoys being creative and has a keen interest in technology, and is fascinated by both new hardware and software.
He also likes retro technology, classic cars and in his spare time enjoys traveling.
He is immersed in the world of Java, PDF and HTML5 but loves to explore other areas in the world of tech.

25 thoughts on “The top 11 Free IDE for Java Coding, Development & Programming

  1. Monggo Ngaji

    thanks a lot bro

  2. very thanks .
    so good…

  3. Atif Naser

    IntelliJ IDEA is the best IDE for me. I’ve ever used Netbeans, Eclipse and JCreator, but none is as good as IntelliJ IDEA.

  4. Donald

    Netbeans is the best of them all, I am using it and don’t think of moving to other IDE.

    • Michael Connell

      Exactly Donald, I would not switch either.


  5. Doug

    IntelliJ IDEA is a memory HOG! I only have 4 gig of RAM, so it takes it 10 minutes just to start up and then my CPU usage is at 100 percent all the time with it.

  6. bub

    JGrasp is TERRIBLE. Lags my computer like CRAZY

    • Sean

      JGrasp may be basic but one thing it is not is slow or laggy, works great on PC and MAC for me.

  7. Ben Larweh

    Good job Author for such an intelligent collection

  8. Yyhhh

    I use Net beans and it is the best one for newcomers

  9. Eclipse was what we used when I was in college, and it’s still what I use to this day! I can’t say for sure if it’s the best there is, but it’s definitely great and I’d recommend it to anyone, especially someone who’s just beginning to learn to code 🙂

    • Colin

      Hi, Recently retired as a high school teacher and have set myself the challenge of learning how to write an app. Mark, can you give me some advice what
      Anguage to use where /how to start, books to buy etc. Cheers Colin

      • Hi Colin, I would recommend trying Java as a language to learn.
        Its fairly easy to learn and a lot of resources are available online.
        This Lifehacker article covers which language you might want to learn if your new to things and want other options besides Java.
        I also recommend Udemy as a resource for self teaching yourself.

  10. borizm

    IntelliJ IDEA was always at least a little bit problematic and didn’t have that much to offer – OK maybe a real something for absolute beginners in Java world.
    I prefer NetBeans for smaller projects and Eclipse IDE for heavier.
    JDeveloper could be potentially considered in a few situations when Oracle EE/Fusion/Middleware runtime is in use.
    JEdit (and vim) is just an advanced editor with a IDE-like optional plugins, rather than regular/solid and ready to use out-of-the-box IDE – probably Atom is or become something more in the future.

  11. blue eagle

    I recommend NotePad++ with JDK, you know JDK?
    it’s very useful with lower RAM and CPU, and it’s very useful for how want to became senior java developer rapidly

  12. punit

    i have 2 gb ramin my laptop. so please suggest the one which can run nicely and smoothly on my laptop.
    thank you.

    • Ive always found Netbeans to be particuarly good on my hardware with low ram. I have tried it before on my Netbook from a few years ago. Best of all you can download Netbeans in different bundles to suit your needs. I recommend you giving this IDE a try to see if it suits your needs.

    • Constantin

      Netbeans runs even on 1gb RAM.

  13. TEJ

    Alex your Article is really helpful and interesting, for new beginners more over I like your quick reply and response.
    Thank you for article

  14. Kavi Lakshmi

    very useful for me

  15. Abdul haseeb

    Android studio is best ever but it takes much time in during dowloading.
    i need its setup only but how???
    🙁 🙁

  16. mbdrian

    netbeans it last very good. also IntelliJ IDEA worth to try.
    for mobile development, i recommendation use android studio for full feature.

  17. Ryan

    I found NetBeans little hard to install. I had problem to install it on my old laptop then I have to download a JDK+NetBeans combo to be able to install. Thanks to your recommendation I will try to install NetBeans on my new laptop.

  18. Charles Heckel

    I tried to install NetBeans and the installer complained it couldn’t find the JDK. Searched all over NetBeans site and found an insignificant notice advising that NetBeans doesn’t work with JDK 9.0
    Then I tried Eclipse and the installer ran and installed Eclipse–in my Downloads folder. I tried moving it to a new folder and running it again, and it complained that it couldn’t create the folder I had installed it in–apparently a duplicate name error. When I finally coaxed it into running and tried to run Eclipse, Eclipse complained that it couldn’t run without an additional extraction, which in turn created more folderol.
    Robert Sedgewick at Princeton seems to recommend Dr. Java. I’m trying that next.

  19. Charles Heckel

    I just checked out Dr. Java and they have a beta for JDK 8.0 but not 9.0. It seems 9.0 is a complete reworking and they have no idea whether they’ll have the resources to create an IDE for 9.0. Alas.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>