Spotted the use of the <splash> task in the Hibernate build.xml today (via BPH). So of course I had to add it to Clover's build file. You can see the results in the following screenshot. The <splash> task shows an image and a progress bar while the build is executing (the image can even be an animated .gif).
This is cool and fun, but "cool" is not the only reason why I added it to a production build file. In a previous life, I was working on a huge GUI client in Java (in pre-1.0 Swing!). We would release to system test quite often (twice a month?), and for each release we would come up with a humorous and on-topic splash screen for the application. It was a good release valve, and was good for morale.
I'm sure that my co-workers will now replace the build splash image from time to time.
You'll do a cvs -q update -dP
and then an ant build
and all
of a sudden some humorous picture will pop up. Nothing like a good chuckle between coders.
To put this into your own build, you will need something like the following. But things to note about this Ant snipet:
<target name="-splash" unless="nosplash"> <property name="splash.dir" location="."/> <splash imageurl="file:${splash.dir}/fun/buildsplash.gif" /> </target> <target name="-nosplash"> <property name="nosplash" value="foo"/> </target> <target name="-init" depends="-splash"> <tstamp> <format property="build.date" pattern="MMMM dd yyyy"/> </tstamp> ... </target> <target name="prod.build" depends="-nosplash, -init, ..."/>
The <splash> task should be used to maximum effect in combination with the <sound> task.