Errore Maven "Impossibile trasferire ..."


285

Sto provando a impostare un progetto usando Maven (m2eclipse), ma ottengo questo errore in Eclipse:

Descrizione Percorso percorso Tipo di posizione Impossibile calcolare il piano di build: Impossibile trasferire org.apache.maven.plugins: maven-compilatore-plugin: pom: 2.0.2 da http://repo1.maven.org/maven2 è stato memorizzato nella cache locale repository, la risoluzione non verrà ritentata fino a quando l'intervallo di aggiornamento di central non sarà trascorso o gli aggiornamenti non saranno forzati. Errore originale: impossibile trasferire artefatto org.apache.maven.plugins: maven-compilatore-plugin: pom: 2.0.2 da / a centrale ( http://repo1.maven.org/maven2 ): nessuna risposta ricevuta dopo 60000 Esempio di progetto Problema Maven sconosciuto

Qualche idea? Sarebbe utile se potessi mostrarmi come verificare se tutto è configurato correttamente ...

Risposte:


721

Rimuovi tutti i download non riusciti:

find ~/.m2  -name "*.lastUpdated" -exec grep -q "Could not transfer" {} \; -print -exec rm {} \;

Per windows:

cd %userprofile%\.m2\repository
for /r %i in (*.lastUpdated) do del %i

Quindi fai clic con il pulsante destro del mouse sul tuo progetto in Eclipse e scegli Maven -> "Aggiorna progetto ...", assicurati che "Aggiorna dipendenze" sia selezionato nella finestra di dialogo risultante e fai clic su OK.


6
In Windows ho usato la finestra di dialogo Explorer per cercare * .lastUpdated in% USERPROFILE% \. M2, quindi ho eliminato i file che Eclipse ha segnalato come problematici. Ha funzionato a meraviglia! Sono sicuro che potresti farlo usando findstr o simili ma la GUI ha funzionato.
Mark McDonald il

4
In Windows, ho visualizzato un Esplora risorse di Windows e ho fatto clic con il tasto destro su .m2 -> Cerca .... Ho inserito * .lastUpdated nel nome del file e "Impossibile trasferire" nella casella di testo "Una parola o frase nel file".
rajah9,

4
In Windows, quei file si trovano all'interno <user-dir>/.m2/repository/org/example/myTool/1.01(vedi il trucco). Basta cancellarli (i *.lastUpdated) a mano e aggiornare le dipendenze.
Cedric Reichenbach il

2
Sotto Eclipse Luna (4.4 pietra miliare) su Windows ho scoperto che dopo aver eliminato * .lastUpdated avevo anche bisogno di ottenere m2eclipse per reindicizzare il repository locale (tramite Eclipse-> Finestra-> Preferenze-> Maven-> Impostazioni utente: Repository locale: Reindex)
gb96,

2
dopo avermi
strappato i

71

Questo ha funzionato anche per me in Windows.

  1. Individua il repository {user} /. M2 / (usando qui Juno / Win7)
  2. Nel campo Cerca in alto a destra della finestra, digita ".lastupdated". Windows cercherà in tutte le sottocartelle questi file nella directory. (Non ho guardato attraverso la cache.)
  3. Rimuovili con il tasto destro del mouse> Elimina (ho conservato tutte le lastupdated.properties).
  4. Quindi tornare in Eclipse, fare clic con il tasto destro del mouse sul progetto e selezionare Maven> Aggiorna progetto. Ho selezionato "Forza aggiornamento di istantanee / rilasci". Fare clic su OK e le dipendenze finalmente risolte correttamente.

1
Inoltre, è stato riscontrato che se le librerie contengono riferimenti errati (sintassi o numero di versione), non verranno scaricati. Utilizza lo strumento di ricerca del repository online Maven per assicurarti di fare correttamente riferimento alle librerie nel tuo pom.xml.
iowatiger08,

Questo ha funzionato per Windows. Grazie mille amico! Ma questo problema si ripresenta a volte. Abbiamo qualche correzione permanente?
LINGS

@ iowatiger08 cosa succede se rimuovo anche i file lastupdated.properties?
martedì 10

@ garg10may Non penso che rimuoverli sarebbe un grosso problema perché Maven li ripopolerà quando farà il prossimo "aggiornamento".
iowatiger08,

@ iowatiger08, ci sono errori se uso una versione come <version> [1.0.0,2.0.0) </version> nel mio file pom, ma cambio la versione in 1.6.10, gli errori sono andati. Perché questo succede?
gfan,

32

In Eclipse: fai clic con il pulsante destro del mouse sul progetto-> Maven-> Aggiorna progetto-> Seleziona la casella di controllo "Forza aggiornamento di istantanee / rilasci". Clicca OK.


17

Grazie per le risposte, ma dopo qualche altra ricerca sono stato in grado di risolvere il problema. Si è scoperto che dovevo rimuovere uno dei "* .lastUpdated" che impediva l'aggiornamento di uno dei miei plug-in (plug-in Maven Surefire). L'ho fatto manualmente, perché una maven clean non lo faceva apparentemente.

Il problema era che il file "* .lastUpdated" per un plug-in stava bloccando il controllo maven per gli aggiornamenti e non consentiva il download di un vaso necessario.


4
Forse è ovvio, ma vorrei solo aggiungere: dopo aver cercato manualmente il file * .lastUpdated specificato nel repository maven (quello di surefire nel mio caso), e averlo eliminato, si deve pulire il progetto in Eclipse.
Superjos

15

Prova a eseguire

mvn -U clean

oppure Esegui> Maven Clean e Maven> Aggiorna istantanee dal menu contestuale del progetto in eclipse


9

Nel mio caso. I problemi sono la stessa ragione. Vedo che il problema è su proxy e firewall.

Ecco la mia soluzione
Fisrt modi:
1. installa Proxy per Maven ed Eclipse
2. Vai a Individua il repository {user} /. M2 / e rimuovi tutti i file * .lastupdated
3. Torna in Eclipse, fai clic destro sul progetto e selezionare Maven> Aggiorna progetto. > Seleziona "Forza aggiornamento di istantanee / rilasci".

Se il progetto esiste ancora, errore. esempio: ecco i miei problemi dopo tutto il passaggio sopra

Failure to transfer org.apache.maven:maven-archiver:pom:2.5 from https://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced. Original error: Could not transfer artifact org.apache.maven:maven-archiver:pom:2.5 from/to central (https://repo.maven.apache.org/maven2): Connect timed out

Io uso questa soluzione utile per me:
1. repository Find in https://mvnrepository.com/
2. Copia dipendenza alla mia * .poml del progetto di
esempio

<dependency>
    <groupId>org.apache.maven</groupId>
    <artifactId>maven-archiver</artifactId>
    <version>2.5</version>
</dependency>


3. Costruisci progetto. la dipendenza mancante verrà scaricata nel repository locale.
4. Torna in Eclipse, fai clic con il pulsante destro del mouse sul progetto e seleziona Maven> Aggiorna progetto. > Seleziona "Forza aggiornamento di istantanee / rilasci".
= >> Errore risolto
5. Rimuovo le dipendenze al passaggio 2 dopo aver terminato e risolto. Fatto


7

Questo ha funzionato per me in Windows:

  1. Individua il {user}/.m2/repository
  2. Nel campo Cerca in alto a destra della finestra, digita " .lastupdated". Windows cercherà in tutte le sottocartelle questi file nella directory.
  3. Rimuovi tutti i .lastupdatedfile.
  4. Torna in Eclipse, fai clic con il pulsante destro del mouse sul progetto e seleziona Maven > Update Project.
  5. Seleziona " Force Update of Snapshots/Releases".
  6. Fare clic su OK e le dipendenze si risolveranno finalmente correttamente.

6

Mi è successo come Iam dietro un firewall. Le dipendenze non vengono scaricate a volte quando si esegue in Eclipse IDE. Assicurati di utilizzare mvn clean install -Uper risolvere il problema. Dopo questo vedresti scaricare le dipendenze.


Una volta che lo fai sul tuo terminale, vai su Eclipse, seleziona progetto e "Aggiorna progetto". Questo dovrebbe risolvere il problema senza introdurre la difficoltà di trovare ed eliminare ".lastUpdated".
Edward Chisciotte il

5

Se sei dietro un proxy, devi aggiornare il file settings.xml (nella cartella conf del tuo MAVEN_HOME, il file stesso contiene informazioni sulle impostazioni del proxy) e potrebbe essere necessario aggiornare le tue impostazioni di rete Eclipse (Finestra-> Preferenze ...-> digitare Connessioni di rete).

Prova a usare -X o --debug per ottenere l'output di debug, questo potrebbe fornire ulteriori informazioni sul problema.


3

Ho avuto un problema simile in Eclipse 3.6 con m2eclipse.

Impossibile calcolare il piano di compilazione: impossibile trasferire org.apache.maven.plugins: maven-resources-plugin: jar: 2.4.3 da http://repo1.maven.org/maven2 è stato memorizzato nella cache nel repository locale, la risoluzione non verrà essere tentato finché non è trascorso l'intervallo di aggiornamento di central o gli aggiornamenti sono forzati. Errore originale: impossibile trasferire artefatto org.apache.maven.plugins: maven-resources-plugin: jar: 2.4.3 dalla centrale (http://repo1.maven.org/maven2): Progetto ConnectException1 Unknown Maven Problem

L'eliminazione di tutti i file maven * .lastUpdated dal mio repository locale (come suggerito da Deepak Joy) ha risolto il problema.


2

Ho avuto un problema simile con solo alcuni progetti nel mio spazio di lavoro. Altri progetti con POM quasi identici non hanno avuto alcun errore. Nessuna delle altre risposte elencate ha risolto il mio problema. Alla fine mi sono imbattuto nella rimozione / riapplicazione della natura Maven per ogni progetto e gli errori sono scomparsi:

Per ogni progetto che ha un pom con l'errore "la risoluzione non verrà tentata ...":

  1. Fai clic con il pulsante destro del mouse sul progetto in Eclipse e seleziona Maven -> Disabilita Maven Nature
  2. Fare clic con il tasto destro del mouse sul progetto in Eclipse e selezionare Configura -> Converti in progetto Maven

2

Mi è successo anche tu potresti avere due soluzioni per questo

  1. Se il tuo progetto consiste in qualche dipendenza esterna o specifica del progetto, devi aggiungerlo manualmente alla cartella repository M2 che si trova nella cartella C: \ Users \ Mohit.Singh.m2 \ repository e quindi devi eseguire mvn eclipse: eclipse e quindi mvn clean install dalla cartella del progetto

  2. se non si dispone di alcuna dipendenza specifica dal progetto o esterna, è possibile importare il progetto in eclissi come progetto di maven esistente, quindi fare clic con il tasto destro del mouse sul progetto -> VAI a maven -> Fare clic su Aggiorna progetto verrà visualizzata una finestra, verificare il download dell'istantanea della forza opzione e premi su OK


2

Fornisci il percorso corretto per setting.xml in eclipse.

  • Windows -> Preferenze -> Maven -> Impostazioni utente

Immettere il percorso setting.xml corretto nella casella di testo delle impostazioni utente


Aggiungi anche l'installazione di
Maven

1

basta eliminare l'archetipo in maven local repository. Come detto sopra, succede in caso di download di archetipi falliti .


1

Per me ho appena aggiunto il seguente codice xml nel file POM.xml. E dopo aver fatto clic ** con il tasto destro nel progetto -> Maven -> Aggiorna progetto e ho controllato Forza aggiornamento di istantanee / rilasci ** e tutto ha funzionato

    <dependencies>
        <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.1.0</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/javax.servlet.jsp/jsp-api -->
        <dependency>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>jsp-api</artifactId>
            <version>2.1</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/jstl/jstl -->
        <dependency>
            <groupId>jstl</groupId>
            <artifactId>jstl</artifactId>
            <version>1.2</version>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.5.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>

0

settings.xml per proxy? e in eclipse ci sono ancora un profilo globale \ locale, aggiungi settings.xml


2
Puoi modificare la tua risposta e aggiungere ulteriori dettagli? Fai un esempio di cosa aggiungere settings.xmle dove può essere trovato. Inoltre, tieni presente che questa domanda ha 10 mesi.
Brigand,

0

È possibile eliminare la cartella .m2 stessa e forzare MyEclipse a scaricare nuovamente tutte le dipendenze all'avvio. Vai a Finestra> Preferenze> MyEclipse> Maven4MyEclipse.


0
  • L'errore precedente si è verificato a causa della rimozione di "maven-compiler-plugin 2.0.2" dal repository di maven.
  • Per me, l'errore precedente viene risolto quando eseguo il downgrade di 'maven-compilatore-plugin' alla versione 2.0 o 2.0.1.

-1

La soluzione che funziona per me è la seguente:

  1. Copia la dipendenza in pom.

    <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-archiver</artifactId>
        <version>2.5</version>
    </dependency>
  2. Clicca a destra sul tuo progetto

  3. Seleziona Maven
  4. Seleziona Aggiorna progetto
  5. Seleziona Forza aggiornamento di istantanee / rilasci

-2

Assicurarsi che il file settings.XML nella cartella .m2 sia valido per primo, quindi dopo aver pulito il repository usando il comando seguente in cmd

cd %userprofile%\.m2\repository
for /r %i in (*.lastUpdated) do del %i
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.