Quelles sont les fonctionnalités cachées de Maven2?

Quelles sont les fonctionnalités cachées de Maven2?

Vous pouvez utiliser le fichier settings.xml pour forcer ALL builds Maven en cours d’exécution sur votre ordinateur local à utiliser également un proxy Maven installé localement. Epargnez-vous et l’heure du réseau.

  localcacheproxies  true    localCacheProxy http://my-local-proxy.com/maven-proxy     

Notez que les en-têtes d’espace de noms dans ce fichier settings.xml donnent également un intellisense décent par opposition aux autres exemples publiés ici. (créer dans votre répertoire home .m2 un dossier sur windows, linux et mac et tous les os’es)

Regardez la dépendance: parsingz aussi.

Parfois, vous avez un fichier qui doit contenir une valeur qui ne peut être découverte qu’au moment de la construction. Vous avez peut-être une classe Java qui vérifie si la période d’évaluation est terminée et vous définissez cette période comme “trente jours après la compilation de cette génération”. Vous avez besoin d’un moyen d’injecter la date actuelle ou une autre propriété directement dans la génération.

Maven a une fonctionnalité cool et cachée appelée filtrage ( Documentation ici ). Avec le filtrage, vous pouvez demander à Maven de rechercher des modèles dans certains fichiers sources et de les remplacer par une valeur, et il est aussi facile à activer que cela:

     src/main/resources true    

Que pouvez-vous coller dans le filtre? Toute variable d’environnement, la plupart des valeurs du fichier pom et des informations sur le compilateur java. Maintenant, si vous modifiez votre numéro de version dans Maven, vous n’avez pas à chercher votre fichier Whatever.properties et à y mettre à jour votre version. Vous pouvez simplement le modifier dans Maven et vous avez terminé.

Avec maven-dependency-plugin, il est possible de résoudre les conflits de dépendance et les problèmes de dépendance cyclique.

Ajoutez à votre pom.xml:

  org.apache.maven.plugins maven-dependency-plugin  

Ensuite, exécutez mvn dependency: resolve ou mvn dependency: build-classpath pour le tester.

En savoir plus sur le plugin de dépendance: http://maven.apache.org/plugins/maven-dependency-plugin/howto.html

  1. inheritance du projet
  2. agrégation de projet
  3. assemblage: assemblage
  4. rapports (findbugs, checkstyle, trèfle, pmd, etc.)