2012-04-05 26 views
7

Ho installato impostazioni Maven proxy in conf/settings.xml comeimpostazioni proxy Maven non funziona

<proxy> 
    <active>true</active> 
    <protocol>http</protocol> 
    <host>proxy.my-company.com</host> 
    <port>8080</port> 
</proxy> 

ma quando corro Maven costruzione, sto ottenendo seguente errore. Qualcuno può aiutare

 
[WARNING] The POM for org.apache.maven.wagon:wagon-ssh:jar:2.2 is missing, no dependency information available 

registro dettagliato

 
mvn -X 

Apache Maven 3.0.4 (r1232337; 2012-01-17 03:44:56-0500) 
Maven home: C:\tools\apache-maven-3.0.4 
Java version: 1.6.0_12, vendor: Sun Microsystems Inc. 
Java home: C:\tools\Java\jdk1.6.0_12\jre 
Default locale: en_US, platform encoding: Cp1252 
OS name: "windows xp", version: "5.1", arch: "x86", family: "windows" 

[INFO] Error stacktraces are turned on. 
[DEBUG] Reading global settings from C:\tools\apache-maven-3.0.4\conf\settings.xml 
[DEBUG] Reading user settings from C:\Documents and Settings\desibaba\.m2\settings.xml 
[DEBUG] Using local repository at C:\Documents and Settings\desibaba\.m2\repository 
[DEBUG] Using manager EnhancedLocalRepositoryManager with priority 10 for C:\Documents and Settings\desibaba\.m2\repository 
[INFO] Scanning for projects... 
[DEBUG] Using connector WagonRepositoryConnector with priority 0 for http://repo.maven.apache.org/maven2 via proxy.my-company.com:8080 as null 
Downloading: http://repo.maven.apache.org/maven2/org/apache/maven/wagon/wagon-ssh/2.2/wagon-ssh-2.2.pom 
[DEBUG] Writing resolution tracking file C:\Documents and Settings\desibaba\.m2\repository\org\apache\maven\wagon\wagon-ssh\2.2\wagon-ssh-2.2.pom.lastUpdated 
[WARNING] The POM for org.apache.maven.wagon:wagon-ssh:jar:2.2 is missing, no dependency information available 
[DEBUG] org.apache.maven.wagon:wagon-ssh:jar:2.2: 
[DEBUG] org.codehaus.plexus:plexus-utils:jar:1.1:runtime 
[DEBUG] Using connector WagonRepositoryConnector with priority 0 for http://repo.maven.apache.org/maven2 via proxy.my-company.com:8080 as null 
Downloading: http://repo.maven.apache.org/maven2/org/apache/maven/wagon/wagon-ssh/2.2/wagon-ssh-2.2.jar 
Downloading: http://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.1/plexus-utils-1.1.jar 
[DEBUG] Writing resolution tracking file C:\Documents and Settings\desibaba\.m2\repository\org\apache\maven\wagon\wagon-ssh\2.2\wagon-ssh-2.2.jar.lastUpd 
ated 
[DEBUG] Writing resolution tracking file C:\Documents and Settings\desibaba\.m2\repository\org\codehaus\plexus\plexus-utils\1.1\plexus-utils-1.1.jar.last 
Updated 
[DEBUG] Looking up lifecyle mappings for packaging pom from ClassRealm[plexus.core, parent: null] 
[ERROR] The build could not read 1 project -> [Help 1] 
org.apache.maven.project.ProjectBuildingException: Some problems were encountered while processing the POMs: 
[ERROR] Unresolveable build extension: Plugin org.apache.maven.wagon:wagon-ssh:2.2 or one of its dependencies could not be resolved: The following artifacts could not be resolved: org.apache.maven.wagon:wagon-ssh:jar:2.2, org.codehaus.plexus:plexus-utils:jar:1.1: Could not find artifact org.apache.maven.wagon:wagon-ssh:jar:2.2 in central (http://repo.maven.apache.org/maven2) @ 

     at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:363) 
     at org.apache.maven.DefaultMaven.collectProjects(DefaultMaven.java:636) 
     at org.apache.maven.DefaultMaven.getProjectsForMavenReactor(DefaultMaven.java:585) 
     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:234) 
     at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) 
     at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) 
     at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) 
     at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
     at java.lang.reflect.Method.invoke(Method.java:597) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) 
[ERROR] 
[ERROR] The project xxx (C:\t1\9630727\pom.xml) has 1 error 
[ERROR]  Unresolveable build extension: Plugin org.apache.maven.wagon:wagon-ssh:2.2 or one of its dependencies could not be resolved: The following artifacts could not be resolved: org.apache.maven.wagon:wagon-ssh:jar:2.2, org.codehaus.plexus:plexus-utils:jar:1.1: Could not find artifact org.apache.maven.wagon:wagon-ssh:jar:2.2 in central (http://repo.maven.apache.org/maven2) -> [Help 2] 
org.apache.maven.plugin.PluginResolutionException: Plugin org.apache.maven.wagon:wagon-ssh:2.2 or one of its dependencies could not be resolved: The following artifacts could not be resolved: org.apache.maven.wagon:wagon-ssh:jar:2.2, org.codehaus.plexus:plexus-utils:jar:1.1: Could not find artifactorg.apache.maven.wagon:wagon-ssh:jar:2.2 in central (http://repo.maven.apache.org/maven2) 

risposta

4

il file delle impostazioni dovrebbe essere simile alla seguente:

<settings> 
    <proxies> 
     <proxy> 
      <active>true</active> 
      <protocol>http</protocol> 
      <username><username-optional></username> 
      <password><password-optional></password> 
      <host><hostname></host> 
      <port><port></port> 
     </proxy> 
    </proxies> 
</settings> 

Se questo non funziona, poi prova a mettere le impostazioni del proxy in un browser come IE e vedi se funziona. Prova anche a colpire direttamente il proxy per assicurarti che non sia uno script di configurazione del proxy. Non so se il Maven suona bene con quelli o no.

Anche se si tratta di uno script di configurazione, lo script deve elencare il proxy corretto da utilizzare nella situazione.

EDIT

Vedo che si sta lavorando forma conf/settings.xml in cui si trova che? Normalmente il file settings.xml si trova in:

/path/to/user/home/.m2/settings.xml

per voi in finestre che sarebbe

C: \ Documents and Settings \ nomeutente \ .m2 \ settings.xml

o

C: \ Users \ nome utente \ .m2 \ settings.xml

o metterlo direttamente nei vostri progetti Maven POM file.

+0

Per te in finestre che sarebbero "C: \ Documents and Settings \ desibaba \ .m2 \ settings.xml" – j13r

+0

@ j13r risposta aggiornata per includere quello anche! –

+0

umm, dubito che sia così. Se rimuovo il proxy dal file delle impostazioni, viene visualizzato un messaggio di errore che non consente a Maven di connettersi al repository. E dopo aver aggiunto l'impostazione proxy, non è in grado di scaricare il file. potrebbe essere il mio proxy aziendale. –

11

Io non sono in grado di fare questo con MVN 3.0.4, ma lo faccio con 3.0.3

sembra essere un bug su 3.0.4 rilascio. OH MIO DIO!! https://issues.apache.org/jira/browse/MNG-5237

EDIT

La voce jira sopra fornisce una soluzione per il Maven 3.0.4 bug: aggiungere

<build> 
<extensions> 
<extension> 
<!-- this extension is required by wagon in order to pass the proxy --> 
<groupId>org.apache.maven.wagon</groupId> 
<artifactId>wagon-http-lightweight</artifactId> 
<version>2.2</version> 
</extension> 
</extensions> 
</build> 

al pom.xml

questo ha funzionato per me

+0

Poiché codehaus non esiste più; L'MNG-5237 è ora rintracciato qui: https://issues.apache.org/jira/browse/MNG-5237 –

9

Senza toccare il tuo POM puoi aggiungere questo library a M2_HOME/lib/ext e utilizzare le seguenti impostazioni proxy nel tuo settings.xml.

<proxy> 
... 
    <username>DOMAIN\USERNAME</username> 
    <password>PASSWORD</password> 
... 

+0

Questa soluzione alternativa è utile per il proxy NTLM per il quale esiste un bug Maven [collegamento] (http: // jira. codehaus.org/browse/MNG-5237) – peterbrown

3

uso mvn -X per vedere l'ordine di lettura dei settings.xml

aiuto uso mvn: efficaci-settings per visualizzare le impostazioni efficaci ora

2

Ho avuto problemi simili. Dopo aver aggiunto nonProxyHosts

il problema del tag

è stato risolto. nota che "zzz.zz.com" deve essere sostituito con il tuo server corretto.

<proxy> 
... 
... 
<nonProxyHosts>localhost|127.0.0.1|zzz.zz.com</nonProxyHosts> 
... 
... 
</proxy> 

per i dettagli http://maven.apache.org/guides/mini/guide-proxies.html

+0

Nota: dobbiamo aggiungere sopra gli elementi in settings.xml disponibili nella cartella 'user.home \ .m2'. Se il file non esiste già nel percorso indicato, crearlo. –

0

io non sono sicuro se questo è il tuo problema, ma ho notato che ho avuto per assicurarsi che il proxy HTTPS è venuto prima di proxy HTTP per utilizzare un proxy HTTPS. Potrebbe essere perché sono lo stesso hostname nella mia configurazione.

0

Se si è dietro il proxy NTLM, consultare la soluzione this che ha funzionato per me!

Se si utilizza IDE come IntelliJ ecc., Assicurarsi di modificare le impostazioni.xml dello stesso software utilizzato da IDE. Voglio dire che potrebbe esserci Maven in bundle e se cambi il tuo sistema maven settings.xml è ovvio che non funzionerà! Quindi controlla le configurazioni IDE. Specifica il nome IDE se vuoi più aiuto su di esso.

Sì, questo è sciocco, ma vale la pena dare un'occhiata! controlla la variabile di ambiente del tuo percorso di sistema per il percorso di errore che è esattamente lo stesso di quale impostazioni.xml stai aggiornando.

spero che questo aiuti!

0

Mi scusi per aver ripristinato un thread così vecchio, ma forse questo aiuterà qualcuno che ha lo stesso errore.

Mi sono imbattuto nello stesso problema come descritto da @OP. Ho combinato alcuni dei tentativi di soluzione descritti qui e ha funzionato per me.

Breve descrizione del problema:

ho scritto un piccolo programma di chat in java che funzionava bene. Pochi giorni dopo ho avuto un nuovo portatile al lavoro e ho dovuto installare e trasferire tutto. Ho usato Eclipse (Versione: Neon.2 Release (4.6.2)) su entrambi i miei laptop, l'unica differenza è stata che ho usato un plugin Maven per Eclipse sul mio vecchio laptop e su quello nuovo ho installato direttamente Maven.

Cosa ho fatto per risolvere il problema?

In primo luogo, ho scritto le impostazioni del proxy in settings.xml, come descritto in questo proxy guide da Maven. Però non ha funzionato per me.

NOTA: ho modificato le impostazioni.xml sotto C:\Program Files\apache-maven-3.3.9\conf

Poi ho letto il commento di @Vijay Krish

"Note: We have to add above elements in settings.xml available under 'user.home\.m2' folder. If file doesn't exists already in the mentioned path, create it." 

Non c'era settings.xml così ho copiato quello da C:\Program Files\apache-maven-3.3.9\conf a user.home\.m2 e ha cercato di nuovo di eseguire un Maven costruire e ha funzionato bene.

Spero che questo sia utile per chiunque abbia difficoltà con questo problema.

migliori saluti

1

ho provato introducendo le impostazioni del proxy al file settings.xml in diversi luoghi, ma sembra che nessuno di loro stati prelevati durante il runtime.

Tuttavia, ho scoperto che c'è una variabile di ambiente MAVEN_OPTS dove sono stato finalmente in grado di impostare le informazioni del proxy e lo hanno riflesso in fase di esecuzione:

MAVEN_OPTS 
-Dhttp.proxyHost=proxy.myproxy.com -Dhttp.proxyPort=80 -Dhttps.proxyHost=proxy.myproxy.com -Dhttps.proxyPort=80 

Windows 7 System Variable Entry

+0

Questa è l'unica soluzione che ha funzionato per me. È così strano perché tutte le impostazioni.xml sembrano essere impostate correttamente! – Kidburla

0

ci sono due settings.xml per maven a seconda di quale settings.xml ti riferisci nel tuo IDE. Assicurati che le informazioni del proxy siano disponibili in quella a cui ti stai riferendo.

  1. One è disponibile in .m2 directory
    C: \ Users ... m2 \ repository
  2. altro è disponibile in conf directory della cartella di Maven.
    apache-maven-X.X.X

Nel mio caso le informazioni proxy venivano prelevati dal punto n. 1 ma stavo cercando di modificare il settings.xml nella directory di Maven