Raven 1.1: Building More Java with Ruby
I’ve just released Raven 1.1 and I’m pretty happy with the new features. For the newcomers Raven is a build system that leverages Ruby tools (namely Rake and Gem) to let you build Java projects easily. It provides a way to handle dependencies, specific Rake tasks for Java and it’s Ruby scripting!
So this latest release lets you install all the dependencies you need directly from the command line. You can install either a single dependency, several dependencies or a whole group. You can also specify the exact version you want or let Raven find the latest one. The package search is based on indexes stored on Raven’s Rubyforge site. These are downloaded (but only if they’ve changed) and the right packages are selected from your search parameters. Then it automatically goes to the Maven repository the artifact comes from, downloads it, wrap it in a Gem and installs it in the Ravem Gem repository. And you’re set!
So it’s as simple as:
raven install httpclient
raven install -g xstream xstream:1.2
raven install –all -g axis2
Neat? Then you can easily write your Rake script to use these dependencies and build your java project using Raven’s java tasks. See my previous post about this.
I have tons of ideas for the next releases, like support for code generation tools (mostly XDoclet and XMLBeans) or making multi-project builds even easier. Something else you’d be interested in?