Domanda

Come faccio a utilizzare riga di comando Maven per determinare quale file di Maven settings.xml è in ripresa?

È stato utile?

Soluzione

Inizia Maven con -X opzione (debug) ed esaminare l'inizio della produzione. Non ci dovrebbe essere qualcosa di simile:

...
[INFO] Error stacktraces are turned on.
[DEBUG] Reading global settings from c:\....\apache-maven-3.0.3\conf\settings.xml
[DEBUG] Reading user settings from c:\....\.m2\settings.xml
[DEBUG] Using local repository at C:\....\repository
...

(i nomi delle directory originali vengono rimossi da me)

Altri suggerimenti

Il tuo commento a Cletus' (corretta) risposta implica che ci sono più file di impostazioni Maven coinvolte.

Maven utilizza sempre una o due file di impostazioni. Tutte le impostazioni definite in ($ {} M2_HOME /conf/settings.xml) è sempre necessario. Il file di impostazioni utente (definito in $ {} user.home /. M2 / settings.xml) è facoltativo. Qualsiasi impostazione definite nelle impostazioni utente prevalgono sulle corrispondenti impostazioni globali.

È possibile sovrascrivere la posizione delle impostazioni globali e utente dalla riga di comando, il seguente esempio effettuerà le impostazioni globali per c: \ impostazioni globali \ settings.xml e l'utente di c: \ user \ settings.xml :

mvn install --settings c:\user\settings.xml 
    --global-settings c:\global\settings.xml

Al momento non v'è alcuna proprietà o mezzi per stabilire quali file delle impostazioni globali degli utenti e sono stati utilizzati da con Maven. Per accedere a questi valori, si dovrebbe modificare MavenCli e / o DefaultMavenSettingsBuilder per iniettare le posizioni dei file nelle Impostazioni risolte oggetto.

È possibile utilizzare il Maven plugin della guida di dirvi il contenuto di le impostazioni globali utente e file.

mvn help:effective-settings

chiederà Maven a sputare le combinato impostazioni globali e utente .

Questo è il file di configurazione per Maven. Può essere specificato a due livelli:

  1. livello utente. Questo file settings.xml fornisce la configurazione per un singolo utente,               ed è normalmente previsto in $ {} user.home /. m2 / settings.xml.

              NOTE: This location can be overridden with the CLI option:
    
              -s /path/to/user/settings.xml
    
  2. Globale livello. Questo file settings.xml fornisce la configurazione per tutti Maven               gli utenti su una macchina (ammesso che sono tutti utilizzando lo stesso Maven               installazione). E 'normalmente fornito in               $ {} Maven.home /conf/settings.xml.

              NOTE: This location can be overridden with the CLI option:
    
              -gs /path/to/global/settings.xml
    

La variabile di ambiente M2_HOME per quella globale. Vedere Impostazioni Riferimento :

  

L'elemento settings nel   il file contiene elementi settings.xml   utilizzata per definire i valori che configurano   esecuzione maven in vari modi, come   il pom.xml, ma non dovrebbe essere   in dotazione per ogni progetto specifico, o   distribuito ad un pubblico. Questi   includere valori quali il locale   percorso del deposito, remota alternate   server repository, e l'autenticazione   informazione. Ci sono due posizioni   in cui un file settings.xml possa vivere:

     
      
  • Il Maven installare: $M2_HOME/conf/settings.xml
  •   
  • installazione di un utente: ${user.home}/.m2/settings.xml
  •   

metodo rapido e sporco per determinare se sta usando Maven settings.xml desiderato sarebbe invalidarne la xml ed eseguire qualche comando Maven sicuro che richiede settings.xml.

Se si legge questo settings.xml allora Maven segnala un errore: "Errore lettura settings.xml ..."

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top