Stefan Tilkov's Random Stuff

Build Tools

Steve Loughran has written an interesting piece on build tools — my favorite quote:

The other change in Java land is Eclipse, which, for better or worse, is about as much an inevitability in a big project as unrealistic deadlines.

Very true. My main problem with IDE-driven builds is the amount of context required, which is directly related to the ability to reproduce a result. If something builds succesfully in my IDE that doesn’t mean it’s going to build successfully in yours — the results depend very much on the IDE configuration. It’s like running Ant or make, but with a few dozen environment variables set.

Comments

On April 20, 2007 10:29 AM, Stian Soiland said:

Combining Eclipse with a decent build tool, such as Maven 2, can be a good middle way. In our projects we are doing exactly that, specifying the full test, build and release process using Maven, and just using Eclipse to modify the source code.

With the proper plugins Eclipse can understand the Maven described architecture (such as which libraries to depend on and which source folders to include), and even help you suggest artefacts to include. (Sadly, still by artefact name and not class name).

Of course the Maven 2.0 plugin for Eclipse is still just version 0.0.9 and suffers from problems with nested projects and classpaths, but I still feel it’s 5 years into the future compared to Ant or.. gross - just using the IDE alone.

On April 20, 2007 7:32 PM, Bill Higgins said:

Even though it’s also early (currently at 0.5), you would probably enjoy seeing the build technology integrated into the Rational Jazz platform’s Eclipse client (disclosure: I’m a Jazz developer) which can kick off builds on the Jazz server and view build results in Eclipse.

We’ve been self-hosting on Jazz build technology for our continuous/integration builds for almost two years and it’s gotten pretty nice.

If you want more info: http://jazz.net/ or you can just email me.