Skip to content


June 18, 2010

I’ve been an Ant user for a long time. Ant has many flaws as a build tool but it does have the advantage of being simple, predictable and reasonably well documented. Maven has been around for a long time however while I liked the fact that it gives you lots of functionality out of the box I dislike how rigid and opaque it is.

Recently I’ve started to use Gradle. Gradle is an extremely impressive project. Even though it has yet to reach the 1.0 milestone, it has extensive documentation and is obviously well thought out.

Like Maven it supports impressive out of the box support functionality with very little work. However it makes setting up custom configurations much easier – at least in my opinion. Ant tasks are also available within Gradle should you have a requirement to use them.

Although I’ve only used it on smaller single project builds from what I’ve read about multi project builds it looks simple and easy to deal with.

The underlying dependency technology uses Ivy which means it automatically gets full compatibility with Maven repositories while keeping the flexibility of ivy configurations.

One of the plugins which I particularly like is the Idea plugin. It makes it easy to create a full IntelliJ Idea project with all the dependencies setup to point straight into the local ivy cache. Unfortunately I didn’t manage to get it working correctly for a multiproject build but otherwise it is still great for creating a new project from scratch.

Gradle is definitely something to look into if you’re looking around for a build tool. Some basic Groovy knowledge would be an advantage however.

From → Build

Leave a Comment

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: