Adam Bien's Weblog

10 Useful Java EE Tools

  1. NetBeans is amazing. With a single download you get a fully integrated Java EE IDE (with CSS editor, HTML 5 support, JPA support, JPA QL auto completion, great maven support, profiler, debugger and DB explorer)
  2. Maven 3--the simplest possible build tool for Java EE projects. If you follow the conventions, Maven is great! A few years ago, I preferred Ant over Maven, but with Maven 3 performance improvements and the available tooling, Maven 3 is a good choice even for smallest projects.
  3. VisualVM--a great Java profiler and monitoring tool (not a surprise, it is actually NetBeans subset).
  4. JMeter--the easy to use load generator
  5. wrote lightfish for easier stress test analysis. LightFish persists and exposes essential GlassFish metrics.
  6. Mockito--a mocking "framework". Easy to use and convenient. Kills the myth that you need interfaces for efficient unit-testing.
  7. Eclipse Memory Analyzer Tool--great utility for heap dump analysis (although it is Eclipse based, it is very easy to install and use :-))
  8. Arquillian--a unit test runner with application server integration. The killer feature: with arquillian you can remove all mocks from src/main/java
  9. Java Decompiler--if you need to look under the hood.
  10. Sonar--useful and dangerous at the same time. My favorite feature: the ability to combine code coverage with cyclomatic complexity. See "clouds".

NEW workshop: HTML 5 and JavaScript Essentials, Three days in April 2017: from Java EE 7 Architectures over Microservices to Performance, Troubleshooting and Monitoring
On demand workshops: Java EE 7: Bootstrap, Effective, Testing and Microservices available for streaming.


A book about rethinking Java EE Patterns


Great list !

Posted by Kenneth Mark on November 01, 2012 at 06:05 AM CET #

Great post.
I really appreciate Mockito.

Posted by Phillip VU on November 05, 2012 at 07:12 AM CET #

Hi, I have never used netbeans but after reading above advantages of NetBeans. Specialy Decompiler
Thanks for info

Posted by Deven on November 05, 2012 at 04:50 PM CET #

Great Decalogue! Thanks!

8. Arquillian: can you elaborate the "remove all mocks from src/main/java" bit?
10. Sonar is great not only for bugs, but for enforcing a consistent coding style, too.

Posted by Danilo Piazzalunga on November 05, 2012 at 07:34 PM CET #

For IDE nothing beats IntelliJ. Seriously. Netbeans is great too, but not that advanced. Worst by far is Eclipse really what a hackish IDE.

Posted by on November 28, 2012 at 03:38 AM CET #

Hi Adam,

I tried to setup the widget to see the files with highest complexity and least coverage or even to define a rule for it (Most complex & less tested files). In the newer Sonar versions they seemed to have dropped this feature. Do you know an alternative?

The only other metric I do like is a coverage minimum for mutation coverage (I am using Pitest). Do you have experiance with such metrics?

Thank you

Posted by Chris on December 09, 2013 at 03:35 PM CET #

Post a Comment:
  • HTML Syntax: NOT allowed
Online Workshops
...the last 150 posts
...the last 10 comments