Dependencymanagement mit Grape

Mit Groovy ist es möglich, Dependencies direkt im Code über Annotations anzugeben. Somit kann ein Groovy-Skript ohne Zusatzbibliotheken weitergegeben werden. Diese werden zur Laufzeit über Ivy heruntergeladen und zum Classpath hinzugefügt. Es entfallen somit zusätzliche Buildskripte.
Seit Version 1.7 ist es auch möglich, die Annotation direkt beim Import oder an der Stelle einer Variablendeklaration zu platzieren.
package de.ronnyfriedland.grape

import au.com.bytecode.opencsv.*;

@Grab(group='net.sf.opencsv', module='opencsv', version='1.7')
class GrapeTest {
  def static main(def args) {
    CSVReader reader = new CSVReader(new StringReader("1,2,3,4,5,6,7,8,9,0"))
    String [] nextLine
    while (nextLine = reader.readNext()) {
      nextLine.each { println it }
    }
  }
}

Quelle: http://docs.codehaus.org/display/GROOVY/Grapes+and+grab