Planning to do speed development with Java? Java IDE is the tool you need to do java programming in a productive and efficient manner. There are many IDEs and editors that make java programming an absolute breeze and choosing one can be a time consuming task.
You can open a basic text editor like notepad and start writing basic java programs or go ahead with a feature rich, code centric, integrated development environment (IDE) like NetBeans, Eclipse Java IDE, JDeveloper, Intellij, Android Studio, MyEclipse or even JEdit.
Which Java IDE should you go for?
This is the question that you need to answer and completely depends on your programming needs, budget at hand and liking. For many beginner programmers, the selection criteria is very simple - “ Go for the most popular free Java IDEs like NetBeans, Eclipse or JDeveloper ”.
Java is widely used for web development, enterprise software development, Android apps development, games development, networking, embedded systems development, education and teaching etc. and for that reason most of the IDEs differ in terms of features offered to develop applications in respective areas.
Organizations and professional developers spend good amount of time to evaluate a development tool before finalizing on to one.
IntelliJ IDEA and MyEclipse for example are feature rich commercial java development tools for enterprise grade J2EE applications development whereas DrJava, JGrasp and BlueJ offer minimum features but are best suited for students or learners and are heavily used in institutes and universities for teaching purposes.
In the recent times, the demand of java programming for developing android apps has resulted in development of more specific IDEs like Google Android Studio which offers features needed for speed mobile apps development.
Best Java IDE - Open Source
NetBeans and Eclipse are the two free open source Java IDEs which are widely used by individuals, small teams as well as enterprises for developing Java applications of all types, and the huge ecosystem of plugins empower these Java development tools with most modern set of features.
If you simply want to play around with Java or run and test some Java code, then an online Java IDE cum compiler too will do the job for you. CompileJava.Net is a good online Java IDE that you can try, others include jdoodle.com, browxy.com and ideone.com.
Covered in this article are the 10 best Java IDE available as of today that match modern development needs, offer tools for speed development and are popular among community of Java developers, students, institutes and large organizations.
1. NetBeans - Best Java IDE (Free Tier)
NetBeans is the most powerful open source free integrated development environment for Java and is used by professional developers for enterprise, web, mobile and desktop applications development. NetBeans is multi platform IDE and is supported on Linux, Windows, Mac as well as on Oracle Solaris.
Oracle acquired Sun Microsystems in 2010 and NetBeans became part of Oracle. Ever after this acquisition, NetBeans is getting continuous upgrades and feature enhancements with sponsorship of Oracle and contribution from a very active community of developers.
NetBeans is an end to end development environment that aids analysis, design, coding, profiling, testing, debugging, compiling, running and deploying applications.
NetBeans supports development of many languages but shines the most when it comes to development in Java and related technologies. It is also the official IDE of Java 8. In short, it supports everything Java.
NetBeans comes with seamless support for GlassFish and Weblogic which makes it a competent platform for J2EE applications development. NetBeans comes with full support for Dependency Injection, contexts, Facelets (JavaServer Faces), RichFaces, IceFaces and web EJB etc.
Netbeans is a great fit when it comes to development with java persistence API, JSP, spring, struts, servlets, web services and Hibernate frameworks. What makes NetBeans unique is its award winning GUI builder that offers drag and drop tools to build desktop applications using Swing and NetBeans Platform.
Support for CLDC and CDC development is out of the box since NetBeans comes packed with Java ME, latest version. Java card platform is the JVM supported on smart cards and NetBeans can be used for Java Card projects development. It also supports Maven as well as Ant build systems.
Historically, Netbeans was first released (pre-release) in 1997 as a student project in Czech Republic. You can download NetBeans here at - Download NetBeans.
Read more about NetBeans at - NetBeans.org.
2. IntelliJ IDEA - Best IDE for Java (Commercial Version)
IntelliJ IDEA is a full featured IDE for Java EE developers and everything that is Java. IntelliJ IDEA comes from the development house of the company named JetBrains which is into the business of making development tools for last 15 years with great success.
IntelliJ IDEA is a professional Java IDE and comes in two flavors – Free community Edition and a much advanced “Ultimate” edition that targets enterprise developers.
Free edition comes packed with many features to build Android apps as well as JVM apps. In fact, Google’s official Android development platform Android Studio is based on free community edition of IntelliJ IDEA. Ultimate edition comes packed with the most modern set of features to productively develop web and Java EE enterprise applications.
You get Java, Kotlin, Groovy, Scala, Android, Gradle, SBT, Git, SVN, Mercurial and CVS support in the free community edition. The basics like code completion, intelligent refactorings, deep static analysis, debugger, test runner etc., of course, are included in the free community edition.
Ultimate edition brings in additional features like -
- Spring MVC framework, Spring Security, Spring Boot, Spring Integration and others
- Support for frameworks like Node.js, Angular and React
- Java EE support including JSF, JAX-RS, CDI, JPA, etc
- Grails, GWT, Griffon and Vaadin support
- Version control with Team foundation server, Perforce, Clearcase and Visual SourceSafe
Deployment is supported with almost all the servers including Tomcat, TomEE, GlassFish, JBoss, WildFly, Weblogic, WebSphere, Geronimo and Virgo. Build tools include Gulp, Grunt, Webpack and NPM via plugin.
In short, you think of a feature required for enterprise apps. development using Java and IntelliJ most probably will already have it included in the Ultimate edition.
You can download community Edition (free of cost) of IntelliJ IDEA Java IDE here at – Download IntelliJ IDEA community edition.
You can read more about IntelliJ IDEA here at – jetbrains.com/idea.
3. Eclipse - Most Popular Java IDE
Eclipse is the name to reckon with in the world of java development, almost all the Java developers I know from my programming days have used Eclipse at some point of time in their development career.
Eclipse has an ecosystem of its own with a huge community of developers, great documentation and tons of plugins to make java development an absolute breeze. Programmers use Eclipse for developing mobile, desktop, web, enterprise as well as embedded systems applications.
Eclipse is mostly written in java itself and is available free of cost as open source Java IDE under Eclipse public license. You can run Eclipse on Windows Mac OS X and Linux.
Eclipse is the big daddy when it comes to integrated development environments.Eclipse can be used for programming in many other languages but it is best known for Java and is the best free IDE available out there in the wild.
Eclipse is extendable and there here are many free and commercial Java IDEs built on top of Eclipse, like MyEclipse, Orion and RAD from IBM.
4. JDeveloper - Java IDE for Everything Oracle
JDeveloper is another open source Java IDE that comes from the development house of Oracle. It supports full development life cycle including modelling, Coding, debugging, monitoring and deployment. JDeveloper is the IDE to go for if you are developing in the world of Oracle’s technologies.
JDeveloper is best suited for developing Java EE applications, databases, web services Rest/Soap, mobile and integrates well with Oracle Fusion middle-ware components.
JDeveloper integrates with most of the version management tools and makes team development an absolute breeze. It also integrates with Oracle developer cloud service for team collaboration and end to end project development tracking.
JDeveloper is visual and declarative that aids development greatly. JDeveloper is the official development environment for Oracle Application Development Framework (ADF). Oracle ADF is the framework build on top of Java Platform enterprise edition, for speed, agility and efficient development.
JDeveloper comes packed with integrated SQL Developer as well as PL/SQL query Editor and greatly helps in building, browsing and reporting on relational databases.
With JDeveloper you also get an embedded weblogic server which makes it easier to run, test and debug Java EE applications right within the development environment.
SOAP and REST development is aided by visual WSDL editor, schema generator as well as service testing features.
You can read more about JDeveloper here at - JDeveloper Free IDE for Java.
5. Android Studio - Free Java IDE for Android Apps
Planning to build Android apps? Android studio is the perfect tool and also the official development environment for anything Android. It was released back in 2014 by Google to replace the Eclipse Android Development Tools (ADT).
Android Studio is built on IntelliJ IDEA’s open source community edition and available free of cost as open source Java IDE under Apache License.
Android holds around 71% of the mobile apps market as of today and most of the Android apps are written in Java, this makes Android Studio one of the most used IDE for Java, specifically for Android apps development.
Some of the key features of Android Studio include -
- Instant Run that pushes code changes to the running app for instance effect
- Feature rich emulator to simulate apps for android wear, phones, tablets and Android TV devices.
- Intelligent Code Editor that offers best of both Java as well as Android SDK
- Feature rich build system - Gradle
- Integration with Subversion and GitHub for version control
- Reusable code and app templates built by Google folks and others
- Support for Testing frameworks and tools like JUnit 4 and Firebase Test Lab
- Firebase Messaging and Google Endpoints for cloud integration
- Intuitive editor for resource translations
- Google material design icon sets
- GPU profiler for graphics debugging
In summary, Android studio brings in the best of a great Java IDE IntelliJ IDEA and breaths Android. Every feature of the IDE is custom tailored for speed development for Android platform.
You can read more about Android Studio here at - Official IDE for Android.
6. DrJava - Lightweight Java IDE
Looking for a lightweight development environment for java programming? DrJava is a great choice, developed and maintained by JavaPLT team at Rice University, Houston, Texas. The continuous development of DrJava is partially funded by Sun Microsystems, Inc., Texas Advanced Technology Program as well as National Science Foundation.
DrJava does not compete with the heavyweight Enterprise grade IDEs like Eclipse, NetBeans, IntelliJ or JDeveloper and is mainly meant for students and beginner developers for learning and creating school/research projects. .
The biggest advantage of DrJava is that you can quickly setup and start writing java code within no time. It is available for download as a Jar file, Windows App as well as Mac OS X App and is very popular among the students all over the globe.
Is DrJava Best IDE for Java for learning?
BlueJ, JGrasp and Greenfoot are three other close competitors to DrJava in the education space, it all depends on what you really need.
Read more about DrJava here at - Java IDE for Learning.
7. MyEclipse - Feature Rich Commercial Java IDE
MyEclipse is another best in class commercial Java IDE, built on top of open source Eclipse IDE, by company named Genuitec, based out of Texas, USA.
MyEclipse is used by many of the fortune 500 companies and is a true Enterprise grade Java EE development platform that brings in best combination of Java EE and related technologies.
Key features of MyEclipse include -
- Support for wide array of frameworks including spring, Hibernate, jQuery, Cordova, JPA and JSF
- Access to Eclipse plug-in’s ecosystem including plugins like clearcase, findbugs, gradle tooling, subversive etc.
- Maven project structure and Built in launch commands
- Embedded Derby and Tomcat database and connectors for all major databases including WebSphere, Glassfish and WEblogic
- Tools including Visual ER models, JPA, Hibernate and POJO
- Spring Scaffolding, Visual Spring Editors and wizards
- IDE to build applications for WebSphere and Liberty profile servers
- Includes JSjet for Enterprise web development
- Tools to generate and test Rest based web services
- Live preview for HTML, CSS and JSP
- Gerrit workflow integration for team collaboration
MyEclipse comes in many flavors, standard and Professional are the two main Editions. Standard edition includes features like database tools, spring support, JSF, persistence tools, visual web designer and everything else that Eclipse has to offer.
Some of the features included in Professional Edition which are not part of standard version are, Android & iOS support, mobile web simulator, Image Editor, UML modeling, Rest inspect, Reporting and jQuery Mobile Templates.
You can read more about MyEclipse Java IDE here at - myEclipse IDE for Java
Another Eclipse based commercial java IDE that gives a close competition to MyEclipse is RAD (Rational Application Developer) by IBM. RAD is a comprehensive Java EE development platform with support for modern set of technologies including web services, Service component architecture, Java EE Connector, Extensible Markup Language (XML) tools, Ajax and web application tool set etc.
You can read more about RAD here at - RAD IDE for Java development.
8. JGrasp - Simple Java IDE
JGrasp is a free IDE for Java, best suited for auto generation of visualizations from the code as Control Structure Diagrams (CSDs). It is very small and lightweight software, written in Java itself and can be run on all operating systems with a JVM (Java Virtual Machine)
JGrasp is the creation of folks at Auburn University and the development is supported by the grant from National Science Foundation.
jGrasp is quite popular among high schools, community colleges as well as universities. At the time of writing this article, jGrasp is used by more than 380 institutions for teaching and training purposes.
You can read more about jGrasp here at - Simple Java IDE.
9. JEdit - Java Editor cum IDE
JEdit is another freely available open source Java Editor and IDE that offers almost all the features needed for efficient programming. It is more like an Editor that can be transformed into a feature rich IDE with the use of plugins.
Some of the plugins required to turn JEdit into Java IDE include AntFarm, Java Style, JBrowse, JCompiler, JIndex, JunitPlugin, ProjectViewer and Swat.
JEdit was originally created by Slava Pestov back in 1998 and is available for free download under GPL license. It is written purely in Java and hence can be run on any platform including Unix, VMS, Mac OS X, OS/2 and Windows.
Read more about JEdit here at - Java Editor cum IDE.
10. BlueJ - Another Free Java IDE
BlueJ is another lightweight Java Editor for beginners and is used by millions of students and beginner programmers across the globe for learning object oriented programming, and Java in general.
It can also be used for small scale projects where you do not have to manage multiple resources or collaborate among teams. The interface is simple to use and intuitive and lets newbies get started quickly without getting overwhelmed.
One of the key features that BlueJ brings on table is its graphical Shell/REPL for Java where you can interact with objects, inspect object values, pass objects as parameters, call methods and invoke java expressions on the fly without compiling.
BlueJ is developed and maintained at University of Kent and supported by non other than the java horse, Oracle. Historically, it was developed and released by Michael Kölling back in 1999.
BlueJ distribution is available under GNU license and can be installed on Ubuntu/Debian, Mac OS X, Windows and Raspbian Linux. Oracle JDK BlueJ installer Jar file is available for other operating systems.
You can read more about BlueJ here at - Free Java Development Environment for Beginners.
Java is one of the most popular programming language with millions of developer using it for web, mobile, enterprise, embedded and desktop apps development since decades.
There are many Java IDEs and editors available since the beginning of time, however, the overall programming paradigm is changing rapidly in the recent years and so are the Java IDEs.
Even though most of the top IDEs covered in this article come in different flavors but the common goal is to give solid tool in the hands of developer for developing java applications with ease, productivity and efficiency.
Sit back straight, list down all of your key requirements and pick the IDE or editor that best fits your project or team needs, this article mentions at the minimum one great Java ide for Linux and Java ide Mac and Java ide for Windows for sure.
Let us know your experience with Java development and the best Java IDE of your choice via comments, cheers!!