Question

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

Était-ce utile?

La solution

Vous pouvez utiliser le fichier settings.xml pour obliger TOUTES les versions de maven exécutées sur votre ordinateur local à utiliser également un proxy maven installé localement. Économiser vous-même et le temps du réseau.

<settings xmlns="http://maven.apache.org/POM/4.0.0"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
                  http://maven.apache.org/xsd/settings-1.0.0.xsd">
    <profile>
        <id>localcacheproxies</id>

        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>

        <repositories>
            <repository>
                <id>localCacheProxy</id>
                <url>http://my-local-proxy.com/maven-proxy</url>
            </repository>
        </repositories>
    </profile>
</profiles>

Notez que les en-têtes d'espaces de noms de ce fichier settings.xml donnent également un intellisense décent, contrairement aux autres exemples publiés ici. (créez dans votre répertoire personnel le dossier .m2 sous Windows, Linux, Mac et tous les systèmes d'exploitation)

Autres conseils

Jetez un coup d’œil à la dépendance: analysez également.

Parfois, un fichier 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 du jour ou une autre propriété directement dans la construction.

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

  <build>
    <resources>
      <resource>
        <directory>src/main/resources</directory>
        <filtering>true</filtering>
      </resource>
    </resources>
  </build>

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 besoin d'aller chercher votre fichier what.properties et de mettre à jour votre version également. 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.

Ajouter à votre pom.xml:

<plugin>
   <groupId>org.apache.maven.plugins</groupId>
   <artifactId>maven-dependency-plugin</artifactId>
</plugin>

Ensuite, exécutez dépendance mvn: résolvez ou dépendance mvn: chemin d'accès à la construction pour le tester.

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

  1. héritage du projet
  2. agrégation de projet
  3. assembly: assembly
  4. rapports (findbugs, checkstyle, trèfle, pmd, etc.)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top