Ce site met a disposition le build journalier de la traduction francaise du Maven: The Definitive Guide
Consultez :
  • Les documents de reference sur le projet original
  • Les sources de la traduction fr sur GitHub
  • maven


    4.5. Ajout de nouvelles dépendances

    L'application Simple Weather va devoir accomplir les trois tâches suivantes : récupérer les données sous forme XML depuis Yahoo! Météo, parser le XML de Yahoo et enfin afficher proprement le résultat sur la sortie standard. Pour réaliser toutes ces tâches, nous devons introduire de nouvelles dépendances dans le pom.xml du projet. Pour parser la réponse XML de Yahoo!, nous allons utiliser Dom4J et Jaxen, pour formater le résultat de ce programme en ligne de commande nous utiliserons Velocity et nous allons aussi devoir ajouter une dépendance vers Log4J qui sera utilisé pour les logs. Après avoir ajouté ces dépendances, notre balise dependencies va ressembler à l'exemple suivant.

    Exemple 4.4. Ajout de Dom4J, Jaxen, Velocity, et Log4J comme dépendances

    <project>
      [...]
      <dependencies>
        <dependency>
          <groupId>log4j</groupId>
          <artifactId>log4j</artifactId>
          <version>1.2.14</version>
        </dependency>
        <dependency>
          <groupId>dom4j</groupId>
          <artifactId>dom4j</artifactId>
          <version>1.6.1</version>
        </dependency>
        <dependency>
          <groupId>jaxen</groupId>
          <artifactId>jaxen</artifactId>
          <version>1.1.1</version>
        </dependency>
        <dependency>
          <groupId>velocity</groupId>
          <artifactId>velocity</artifactId>
          <version>1.5</version>
        </dependency>
        <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>3.8.1</version>
          <scope>test</scope>
        </dependency>
      </dependencies>
      [...]
    </project>

    Comme vous pouvez le voir nous avons ajouté quatre balises de dépendance à celle existante qui référençait la dépendance de scope test sur JUnit. Si vous ajoutez ces dépendances au fichier pom.xml du projet et exécutez la commande mvn install, vous verrez Maven télécharger toutes ces dépendances et les dépendances transitives dans votre dépôt local Maven.

    Comment avons-nous trouvé ces dépendances ? "Savions" nous à l'avance quelles seraient les bonnes valeurs pour le groupId et l'artifactId ? Certaines dépendances sont tellement utilisées (comme Log4J) que vous vous souviendrez du groupId et de l'artifactId à chaque fois que vous en aurez besoin. Velocity, Dom4J et Jaxen ont été localisés grâce au site internet très utile http://repository.sonatype.org. Il s'agit d'une version publique du Nexus de Sonatype. Elle fournit une interface permettant d'effectuer des recherches sur différents dépôts Maven, vous pouvez l'utiliser pour trouver vos dépendances. Vous pouvez tester ceci par vous même, ouvrez http://repository.sonatype.org et cherchez des bibliothèques très utilisées comme Hibernate ou le framework Spring. Quand vous recherchez un artefact sur ce site, il vous montrera un artifactId et toutes ses versions disponibles sur le dépôt central de Maven. Si vous cliquez sur une version spécifique, vous obtiendrez une page qui contient les balises de dépendance que vous aurez à copier/coller dans le pom.xml de votre projet. Si vous avez besoin de trouver une dépendance, vous devrez consulter repository.sonatype.org, car vous allez rapidement vous rendre compte que certaines bibliothèques ont plus d'un groupId. Avec cet outil, vous pourrez utiliser le dépôt Maven.