Choosing your Java IDE

Choosing your Java IDE

Every Java programmer needs a programming editor or IDE that can assist with the grungier parts of writing Java and using class libraries and frameworks. Which editor or IDE will be the best fit for you depends on several things: the nature of your development projects, your role in the organization, your level of programming skills, the processes used by the development team, whether the team has standardized on tools, and, of course, your personal preference.

You would hope that an IDE supports the latest versions of your favorite JVM languages, including Java, Kotlin, Scala, and Groovy. You’d want it to support the most popular application servers and Java frameworks, such as Apache Tomcat, Spring, JavaServer Faces, Struts, GWT (Google Web Toolkit), Play, Wicket, Grails, Dropwizard, ATG, Spark, Hadoop, and Vaadin. A workable IDE should support whatever build and version control systems your group uses, such as Ant, Maven, and Gradle, along with Git, SVN, CVS, Mercurial, and Bazaar. For extra credit, your IDE should be able to handle the client and database layers of your stack, including JavaServer Pages, Embedded JavaScript, TypeScript, and HTML on the client side and Hibernate, JPA, and SQL for the data layer.

Finally, you want a Java IDE that lets you edit, build, debug, and test your systems with ease and grace. Ideally, you’d not only have intelligent code completion but intelligent refactoring and code metrics. If you’re in a shop that does test-driven development, you want support for your testing frameworks and stubbing. If your group uses a ticket system and CI/CD, the IDE should be able to connect to them. If you need to deploy to and debug on containers and clouds, your IDE should help with that.

The three IDEs most often chosen for server-side Java development are IntelliJ IDEA, Eclipse, and NetBeans. These aren’t the only options, however, and we’ll also discuss a few lighter-weight IDEs. For this review, I did fresh installations of IntelliJ IDEA Ultimate 2022.1.1, Eclipse Installer 2022-03 and the Eclipse IDE for Enterprise Java and Web Developers, and NetBeans 13 on a MacBook Pro. I also checked out several open source Java projects, which I used to demonstrate IDE features.

IntelliJ IDEA

Go to Publisher: InfoWorld