Chapitre Présentation du langage Groovy
Présentation de la technologie Grape
Dans ce chapitre, nous allons voir la technologie Grape qui permet d'inclure des dépendances supplémentaires à votre Script, les télécharger automatiquement. Ces bibliothèques peuvent notamment être utilisées de Maven Central pour enrichir les fonctionnalités de votre script.
Gradle, le gestionnaire de dépendances
Grape est un gestionnaire de dépendances embarqué dans Groovy.
Grape utilise le système de dépendance de Apache IVY et plus particulièrement permet le téléchargement de dépendances depuis les repository Maven.
Les annotations
L'annotation @Grab
permet de télécharger une dépendance Maven
@Grab(group='org.springframework', module='spring-orm', version='3.2.5.RELEASE')
L'annotation @Grape
permet de télécharger plusieurs dépendances Maven
@Grapes([
@Grab(group='commons-primitives', module='commons-primitives', version='1.0'),
@Grab(group='org.ccil.cowan.tagsoup', module='tagsoup', version='0.9.7')])
Comme avec Maven, il est possible d'exclure des dépendances.
@GrabExclude('xml-apis:xml-apis')
Les annotations se placent sur les imports, les packages ou les déclarations de classe.
@Grab('org.springframework:spring-orm:3.2.5.RELEASE')
import org.springframework.jdbc.core.JdbcTemplate
Attention, le mécanisme de résolution des dépendances est un peu différent de Maven, la liste des bibliothèques peut être légèrement différente.
Il faut également faire attention aux conflits avec les dépendances Groovy.