You are currently browsing the daily archive for October 19, 2006.

Recently my company constructed new build process. I found very good articles.
The Build Process

There are many ways to build or release software, processes such as Continuous Integration and Release Management can help you to increase productivity or be more disciplined. The articles in this section discuss a number of processes and best practices.


In my J2EE projects I used the following tools:

  1. ANT (if you have already scripts) or Maven2 (it is more interesting for JavaEE 5)
  2. Xdoclet: a flexible and extensible code generator. It is very easy to customize the templates and generate additional code. Generates DDs, Local, Remote, Home, Composite-Keys, Value Objects,  Facades etc.
  3. You can use APT (significanlty faster) instead of XDoclet. But you have to build the generator first…
  4. JBossIDE: an eclipse plugin (actually nature and perspective). Especially useful for code completion of xdoclet-tags (just click: ctrl+space to expand…)
  5. P6SPY: a free sql logging tool. Also binding variables in prepared statements are monitored.
  6. JMeter, Grinder, OpenSta(if possible LoadRunner). Load testing frameworks (from my perspective: even more important then unit-testing)
  7. JunitPerf, HttpUnit:  collection of JUnit test decorators used to measure the performance and scalability of functionality contained within existing JUnit tests.
  8. JConsole: part of Java SE 5. A JMX-monitoring tool.
  9. JEdit: very useful and powerful editor.
  10. Continuum, Ivy or CruiseControl: central build servers (very useful)
  11. JDepend, PMD, FindBugs , CheckStyle, Jalopy: basic QA stuff.
  12. Middlegen: DB import wizzards (can generate Hibernate, CMP 2.0 etc. from DB).
  13. StarUML: a free UML-Tool (sometimes it is required to draw pictures :-))
  14. Squirrel, QuantumDB, Eclipse DTP  or just Netbeans: Database explorers
  15. Jikes: very fast compiler for development
  16. Scriptella, Apache DdlUtils: Database migrations are a critical piece of any project upgrade.
  17. Eclispe WTP, Apache Struts, Ajax, Ruby on Rails : Web development tools.