Domanda

Quali sono le funzionalità nascoste di Maven2?

È stato utile?

Soluzione

Puoi usare settings.xml per forzare TUTTE le build di maven in esecuzione sul tuo computer locale per usare anche un proxy di maven installato localmente. Salvare te stesso e il tempo di rete.

<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>

Nota che le intestazioni dello spazio dei nomi in questo settings.xml danno anche un discreto intellisense rispetto ad altri esempi pubblicati qui. (crea nella tua cartella .m2 cartella home su windows, linux e mac e tutti i sistemi operativi)

Altri suggerimenti

Dai un'occhiata alla dipendenza: analizza anche.

A volte hai un file che deve contenere un valore che può essere scoperto solo al momento della creazione. Forse hai una classe Java che controlla se il periodo di valutazione è scaduto e lo definisci come "trenta giorni dopo la compilazione di questa build". È necessario un modo per inserire la data corrente o un'altra proprietà direttamente nella build.

Maven ha una funzione interessante e nascosta chiamata filtering ( Documentazione qui ). Con il filtro, puoi chiedere a Maven di cercare modelli in alcuni file sorgente e sostituirli con un certo valore, ed è facile da attivare come questo:

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

Cosa puoi attaccare al filtro? Qualsiasi variabile d'ambiente, la maggior parte dei valori nel file pom e informazioni sul compilatore java. Ora, se modifichi il numero della tua versione in Maven, non devi andare a cercare il file whatever.properties e aggiornare anche la tua versione lì. Puoi semplicemente modificarlo in Maven e il gioco è fatto.

Con maven-dependency-plugin è possibile risolvere conflitti di dipendenza e problemi di dipendenza ciclica.

Aggiungi al tuo pom.xml:

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

Quindi esegui dipendenza mvn: risoluzione o dipendenza mvn: build-classpath per testarlo.

Ulteriori informazioni sul plug-in di dipendenza: http://maven.apache.org/plugins/maven-dependency- plugin / HOWTO.html

  1. eredità del progetto
  2. aggregazione del progetto
  3. il montaggio: il montaggio
  4. rapporti (findbugs, checkstyle, clover, pmd, etc)
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top