Wednesday, April 22, 2009

Hackystat + Ivy = Win?

It's Google Summer of Code time so I checked out Hackystat and tried to build it from source. A couple hours later, my Hackystat development environment was setup. Ouch.

The hardest part about setting up my environment were all of the tool dependencies. To build

hackystat-utilities, hackystat-sensorbase-uh, hackystat-sensorshell, I needed to the following libraries:


Then I needed to set the following environmental variables:

  1. HACKYSTAT_UTILITIES_HOME
  2. HACKYSTAT_SENSORBASE_HOME
  3. JUNIT_HOME
  4. FINDBUGSHOME
  5. APACHEJCSHOME
  6. APACHECOMMONSLOGGINGHOME
  7. RESTLETHOME
  8. JAVAMAILHOME
  9. DERBYHOME
  10. CHECKSTYLEHOME
  11. EMMAHOME
  12. HACKYSTATANTSENSORSHOME
  13. ANTARGS
  14. PMDHOME

As a developer it would be cool if I could check out the source files and run a couple of ant targets to retrieve the dependencies.

At work I've been experimenting with Ivy to download my project's dependencies. I download the dependencies to the project's library directory via an Ivy ant task and I'm done. There is no need to configure any environmental variables because the build script knows the "Home Folder" of the external libraries.

I checked on the Hackydev Mailing List and found a thread started by Aaron a long time ago called Ivy for Java hackystat dependency management.

I think it would be really useful if it were easiser for new developers to check out the source and start hacking. Integrating Ivy into Hackystat's build system might be a useful project and help to reduce Hackystat's hacking entry barrier.


2 comments:

Philip Johnson said...

Funny you mention this. I am planning to start integrating Ivy with Hackystat next week.

Great minds think alike!

Purnank Harjivanbhai Ghumalia said...

Sure Setting up environment is difficult, with so many libraries :)

For the time-being, this is what I did to remain away from all the juggleries to set all the environment variables.

http://purnank.in/2008/09/developing-hackystat-on-your-pc/