Apart from your favourite IDE, I feel, a Java Developer might be very productive with the following tools (in no particular order):
- Firefox (Do I need to say anything about it?)
- Apache Ant (Not needed, if you use NetBeans. NetBeans has got bundled ant)
- JEdit (Mainly for it’s wide range of plugins. I use it’s LogViewer and HexViewer plugin frequently. Also it has got excellent syntax highlighting for your properties file, java files, nsis scripts etc)
- Subversion Version Control System(Got excellent integration with NetBeans and Eclipse. You must consider it atleast for your personal development.) You can read more about installing subversion here.
- Apache Tomcat (The ubiquitous servlet container.)
- Glassfish (The best open source application server, at the moment. Thanks RedHat for making JBoss AS development sluggish. JBoss AS users are waiting for nearly 1 1/2 years for the 5.0 release.)
- Hudson (The fastest growing continuous integration server. This can be an excellent add-on to your ant/maven based build process). You can read more about hudson here.
- Java Service Wrapper (An excellent product to launch your java applications as a windows service)
- CheckStyle/PMD (Excellent code coverage tools to make your source code more maintainable)
- JASYPT (Excellent cryptography library to encrypt/decrypt your passwords, files etc.)
- Apache Commons Library (Contains almost all the utility classes you will ever need. Kindly check this project before writing your own utility classes)
- JUDE Community (An excellent free UML modelling tool. You must definitely give it a try. It’s lightweight and it’s very simple to use.)
- MySQL (The most popular open source database at the moment)
Did anybody say that I forgot to add Google as well
What else do you use? It will be of great use to the community if you can share about your experience as well.
Note: I tend not to include frameworks like Spring, JSF, Wicket etc.. Because you can see these frameworks too are highly subjective and a major reason for lots of flamewars. And that’s the reason why I didn’t mention any IDE as well. Whatever IDE or framework you use, it’s very likely that you might need the above mentioned “tools” except a few like database/application server, whose choice are mostly defined by a particular organization.
You should read this article in the perspective of “tools needed for your personal java development”. Because there are “lots” of factors involved in your work environment regarding the selection of tools.
And lastly, this is my humble suggestion only. So if you find your favourite tool missing, don’t get panic. Cheers…



Interesting post !
Have you never look at Quartz, it is an excellent scheduler task.
There is so many API in Java sometime, it is hard to find the best one, isn’t it ?
dbVisualizer – best java based database conn/development tool
http://www.minq.se/products/dbvis/
Where we tonight shall camp?….The top blogs of the day. the newest report , see and reply me some comments. Thanks.
Hi Cba,
You are right. I use Quartz as well. It’s an excellent tool as well. But as you said, sometimes it is difficult to find the best one…
Must have tools for a Java Developer « James Selvakumar’s Blog
Must have tools for a Java Developer « James Selvakumar’s Blog
What about a decent shell?
[...] ¿Programas en Java? Pues no puedes perderte esta lista de herramientas que te ayudaran a la hora de programar en Java. Enlace: Must have tools for a Java Developer [...]
MySql is the McDonalds of databases. It may be the most popular free database but not the best free database.
Quartz grates against J2EE common sense; now we have EJB timers, only underachievers hurt themselves with Quartz’s runaway threads and DB tables.
As a database and application server for development, the exact same version of whatever is used in the production environment is appropriate; anything else, even if it’s “better”, is a stupid compatibility hazard.
This is one of the web’s most interesting stories on Thu 20th Mar 2008
These are the web’s most talked about URLs on Thu 20th Mar 2008. The current winner is ..
Subversion is an amazing tool, I use it for all my projects!
That list seems to me like a random linkage of popular open source projects with no particular purpose or audience. Why would a client-side Java developer have any use for Tomcat, Glassfish or MySQL? Besides, those aren’t tools, but much rather complex infrastructure software catered towards a specific technical domain (Web applications / JEE).
And what does Firefox have to do with Java development?!
Excellent Blog. Thanks for sharing your info.
Looks more like tools for a web development project.
Two tools that I think you need to be aware of for Java development are Guice for dependency injection and Google Collections Library for making life so much easier when dealing with Java collections.
I would agree with Matthias on this one – it seems like just a list of random popular OS projects related to J2EE development.
I think PMD/Checkstyle are good but I also like to use FindBugs. There is a nice NetBeans plugin for this also.
Hey…what about Derby Database…is part of Netbeans!!!better than MySQL (IMHO)
Ostermiller Utils are also a great source of libraries:
http://ostermiller.org/utils/
What about SoapUI? Of course, it isn’t specific for java platforms…but it’s so USEFUL!!
NetBeans IDE 6.1
I’d recommend Glassbox (http://www.glassbox.com/)
Using AspectJ’s Runtime Weaving, it provides a free readymade performance analyzer for (almost) any kind of java application… moreover, its open-source.. useful to summarize performance, esp during initial stage of profiling…
Also needed in the list are decompiler, Heap dump analyzer (there’s one hprof reader from SAP, which is free and awesome), Thread dump analyzer…
You missed the most important tool for java developers:
http://junit.org/
Why is not maven in the list?
[...] Must have tools for Java developer Java utilitys What is Terracotta? Spring Java configuration Make anything and [...]
11) TestNG for test or JUnit for unit test.
Nice blog…
JProfiler is best Java profiling tool
[...] Vía: Must have tools for a Java Developer [...]
Must have tools for a Java Developer…
Apart from your favourite IDE, a Java Developer might be very productive with the following tools (in no particular order):
- Firefox (Do I need to say anything about it?)
- Apache Ant (Not needed, if you use NetBeans. NetBeans has got bundled ant)
- …
Maven is missing here? I rather use Maven for my project management