There are only two options: Ant or Maven.
Ant is essentially a scripting tool that you can do, but you need to write everything yourself.
Maven comes with a lot of predefined project types. This will dictate the directory structure (which some people don't like), but it will also handle the dependencies (which Ant can sort with Ivy).
Personally, I prefer Maven. A few lines of XML will provide you with tasks for running unit tests, stopping and starting a web container (like Jetty or Tomcat), etc.
source share