Erro do Maven "Falha ao transferir ..."

285

Estou tentando configurar um projeto usando o Maven (m2eclipse), mas recebo este erro no Eclipse:

Não foi possível calcular o plano de compilação do caminho do recurso de descrição: falha ao transferir org.apache.maven.plugins: maven-compiler-plugin: pom: 2.0.2 de http://repo1.maven.org/maven2 foi armazenado em cache no local repositório, a resolução não será tentada novamente até que o intervalo de atualização da central tenha decorrido ou que as atualizações sejam forçadas. Erro original: não foi possível transferir o artefato org.apache.maven.plugins: maven-compiler-plugin: pom: 2.0.2 de / para central ( http://repo1.maven.org/maven2 ): Nenhuma resposta recebida após 60000 ExampleProject Problema desconhecido do Maven

Alguma ideia? Seria útil se você pudesse me mostrar como verificar se está tudo bem configurado ...

Deepak Joy
fonte

Respostas:

719

Remova todos os seus downloads com falha:

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

Para Windows:

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

Em seguida, clique com o botão direito do mouse em seu projeto no eclipse e escolha Maven -> "Atualizar projeto ...", verifique se "Atualizar dependências" está marcado na caixa de diálogo resultante e clique em OK.

Jonas Andersson
fonte
6
No Windows, usei a caixa de diálogo do explorador para procurar * .lastUpdated em% USERPROFILE% \. M2 e excluí os arquivos que o Eclipse relatou como problemáticos. Trabalhou um prazer! Tenho certeza que você poderia fazê-lo usando findstr ou similar, mas a GUI funcionou.
Mark McDonald
4
No Windows, criei o Windows Explorer e cliquei com o botão direito em .m2 -> Pesquisar .... Coloquei * .lastUpdated no nome do arquivo e "Não foi possível transferir" na caixa de texto "Uma palavra ou frase no arquivo".
rajah9
4
No Windows, esses arquivos estão localizados no interior <user-dir>/.m2/repository/org/example/myTool/1.01(você vê o truque). Apenas exclua-os *.lastUpdatedmanualmente e atualize as dependências.
Cedric Reichenbach
2
No Eclipse Luna (marco 4.4) no Windows, descobri que, após excluir * .lastUpdated, eu também precisava que o m2eclipse reindexasse o repositório local (via Eclipse-> Janela-> Preferências-> Maven-> Configurações do usuário: Repositório local: Reindex)
GB96
2
depois de puxar meus cabelos por horas ... finalmente esta solução funcionou para mim em neon eclipse .... thankyou
Tayab Hussain
71

Isso funcionou para mim no Windows também.

  1. Localize o repositório {user} / .m2 / (usando o Juno / Win7 aqui)
  2. No campo Pesquisar no canto superior direito da janela, digite ".lastupdated". O Windows procurará por todos os arquivos em todas as subpastas no diretório (Eu não procurei no cache.)
  3. Remova-os clicando com o botão direito do mouse> Excluir (mantive todas as lastupdated.properties).
  4. Em seguida, volte ao Eclipse, clique com o botão direito do mouse no projeto e selecione Maven> Atualizar projeto. Selecionei "Forçar atualização de instantâneos / liberações". Clique em OK e as dependências finalmente foram resolvidas corretamente.
iowatiger08
fonte
1
Também foi descoberto que, se você tiver referências incorretas (sintaxe ou número da versão) às bibliotecas, elas não serão baixadas. Use a ferramenta de pesquisa de repositório online do Maven para garantir que você esteja fazendo referência às bibliotecas corretamente no seu pom.xml.
precisa saber é o seguinte
Isso funcionou para janelas. Valeu mesmo, cara! Mas esse problema ocorre às vezes. Temos alguma correção permanente?
LINGS 15/08/13
@ iowatiger08 o que acontece se eu remover os arquivos lastupdated.properties também?
garg10may
@ garg10may Eu não acho que removê-los seria um grande problema, porque o Maven os repovoará quando fizer a próxima "atualização".
iowatiger08
@ iowatiger08, Existem erros se eu usar uma versão como <versão> [1.0.0,2.0.0) </version> no meu arquivo pom, mas eu altero a versão para 1.6.10, os erros desapareceram. Por que isso acontece?
gfan
32

No Eclipse: Clique com o botão direito do mouse no projeto-> Maven-> Atualizar projeto-> marque a caixa de seleção "Forçar atualização de snapshots / liberações". Clique OK.

Zhenya
fonte
17

Obrigado pelas respostas, mas depois de mais algumas pesquisas, consegui resolver o problema. Aconteceu que eu tive que remover um dos "* .lastUpdated" que estava impedindo a atualização de um dos meus plug-ins (Maven Surefire Plugin). Eu fiz isso manualmente, porque uma limpeza maven não estava fazendo isso aparentemente.

O problema era que o arquivo "* .lastUpdated" de um plug-in estava bloqueando a verificação do maven para atualizações e não permitindo o download de um jar necessário.

Deepak Joy
fonte
4
Talvez seja óbvio, mas eu gostaria de acrescentar: Depois de procurar manualmente o arquivo * .lastUpdated especificado no repositório maven (com certeza é um no meu caso) e excluí-lo, é preciso limpar o projeto no Eclipse.
Superjul
15

Tente executar

mvn -U clean

ou Executar> Maven Clean e Maven> Atualizar capturas instantâneas no menu de contexto do projeto no eclipse

Lev Khomich
fonte
9

No meu caso. Os problemas são o mesmo motivo. Vejo que o problema está no proxy e no firewall.

Aqui, minha solução,
Fisrt maneiras:
1. Instale o Proxy para Maven e Eclipse
2. Vá para Localize o {user} /. M2 / repository e Remova todos os arquivos *
. selecione Maven> Atualizar projeto. > Selecione "Forçar atualização de instantâneos / liberações".

Se o projeto ainda existir, existe um erro. exemplo: aqui estão os meus problemas, afinal, acima da etapa

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

Eu uso esta solução útil para mim:
1. Encontre o repositório em https://mvnrepository.com/
2. Copie a dependência para o meu * .poml do
exemplo de projeto

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


3. Construa o projeto. a dependência ausente será baixada no repositório local.
4. Volte para o Eclipse, clique com o botão direito do mouse no projeto e selecione Maven> Atualizar Projeto. > Selecione "Forçar atualização de instantâneos / liberações".
= >> O erro foi resolvido
5. Removo as dependências na etapa 2 após a conclusão e a resolução. Feito

huan le
fonte
7

Isso funcionou para mim no Windows:

  1. Localize o {user}/.m2/repository
  2. No campo Pesquisar no canto superior direito da janela, digite " .lastupdated". O Windows procurará por todos os arquivos em todas as subpastas no diretório
  3. Remova todos os .lastupdatedarquivos.
  4. Volte para o Eclipse, clique com o botão direito do mouse no projeto e selecione Maven > Update Project.
  5. Selecione " Force Update of Snapshots/Releases".
  6. Clique em OK e as dependências finalmente serão resolvidas corretamente.
sumeet kumar
fonte
6

Aconteceu comigo como eu estou atrás de um firewall. Às vezes, as dependências não são baixadas quando você está executando no Eclipse IDE. Certifique-se de usar mvn clean install -Upara resolver o problema. Você verá o download das dependências depois disso.

Kran
fonte
Depois de fazer isso no seu terminal, vá para o Eclipse, selecione o projeto e "Atualizar projeto". Isso deve resolver o problema sem introduzir a dificuldade de localizar e excluir ".lastUpdated".
Edward Quixote
5

Se você estiver atrás de um proxy, precisará atualizar o arquivo settings.xml (na pasta conf do seu MAVEN_HOME, o próprio arquivo contém informações sobre as configurações do proxy) e, além disso, pode ser necessário atualizar as configurações de rede do Eclipse (Janela-> Preferências ...-> digite Conexões de Rede).

Tente usar -X ou --debug para obter a saída de depuração, isso pode fornecer informações adicionais sobre o problema.

Abel Morelos
fonte
3

Eu tive um problema semelhante no Eclipse 3.6 com m2eclipse.

Não foi possível calcular o plano de compilação: falha ao transferir org.apache.maven.plugins: maven-resources-plugin: jar: 2.4.3 de http://repo1.maven.org/maven2 foi armazenado em cache no repositório local, a resolução não será tente novamente até que o intervalo de atualização da central tenha decorrido ou que as atualizações sejam forçadas. Erro original: não foi possível transferir o artefato org.apache.maven.plugins: maven-resources-plugin: jar: 2.4.3 from central (http://repo1.maven.org/maven2): ConnectException project1 Problema desconhecido do Maven

A exclusão de todos os arquivos maven * .lastUpdated do meu reository local (como sugerido por Deepak Joy) resolveu esse problema.

Luki
fonte
2

Eu tive um problema semelhante com apenas alguns projetos no meu espaço de trabalho. Outros projetos com POMs quase idênticos não apresentaram nenhum erro. Nenhuma das outras respostas listadas resolveu meu problema. Finalmente, me deparei com a remoção / reaplicação da natureza do Maven para cada projeto e os erros desapareceram:

Para cada projeto que possui um pom com o erro "resolução não será tentada novamente ...":

  1. Clique com o botão direito do mouse no projeto no Eclipse e selecione Maven -> Desativar Maven Nature
  2. Clique com o botão direito do mouse no projeto no Eclipse e selecione Configurar -> Converter em Projeto Maven
smith.gt
fonte
2

Aconteceu comigo também que você pode ter duas soluções para isso

  1. Se o seu projeto consistir em alguma dependência externa ou específica do projeto, você deverá adicioná-lo manualmente à pasta M2 repo, localizada na pasta C: \ Users \ Mohit.Singh.m2 \ repository, e então executar o mvn eclipse: eclipse e mvn instalação limpa a partir da pasta do projeto

  2. se você não possui nenhuma dependência específica do projeto ou do wxternal ou do projeto, pode importar o projeto para o eclipse como projeto maven existente e clicar com o botão direito do mouse em projeto -> ir para maven -> clicar em atualizar projeto; uma janela será exibida; verifique a força de download do snapshot opção e clique em OK

Mohit Singh
fonte
2

Dê o caminho correto do maven setting.xml no eclipse.

  • Windows -> Preferências -> Maven -> Configurações do Usuário

Digite o caminho setting.xml correto na caixa de texto configurações do usuário

HansiRadhakrishnan
fonte
Adicionar instalação maven bem nas preferências do eclipse maven
Gunwant
1

basta excluir o arquétipo em maven local repository. Como dito acima, isso acontece em caso de falha no download de arquétipos.

Pravat Panda
fonte
1

Para mim, acabei de adicionar o código xml abaixo no arquivo POM.xml. E depois que eu cliquei ** clique com o botão direito do mouse no projeto -> Maven -> Atualizar projeto e verifiquei Forçar atualização de snapshots / liberações ** e tudo funcionou

    <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>
Lamine BA
fonte
0

settings.xml para proxy? e no eclipse existem perfis globais \ locais, adicione o settings.xml

roi
fonte
2
Você pode editar sua resposta e adicionar mais detalhes? Dê um exemplo do que adicionar settings.xmle onde ele pode ser encontrado. Além disso, lembre-se de que esta pergunta tem 10 meses.
Brigand
0

Você pode excluir a própria pasta .m2 e forçar o MyEclipse a baixar novamente todas as dependências na inicialização. Vá para Janela> Preferências> MyEclipse> Maven4MyEclipse.

R Tiwari
fonte
0
  • Acima Ocorreu um erro devido à remoção do 'maven-compiler-plugin 2.0.2' do repositório maven.
  • Para mim, o erro Acima é resolvido quando eu faço o downgrade do 'maven-compiler-plugin' para a versão 2.0 ou 2.0.1.
Avinash Pande
fonte
-1

A solução que funciona para mim é a seguinte:

  1. Copie a dependência para pom.

    <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-archiver</artifactId>
        <version>2.5</version>
    </dependency>
  2. Clique direito no seu projeto

  3. Selecione Maven
  4. Selecione Atualizar projeto
  5. Selecione Forçar atualização de instantâneos / liberações
Jorge Santos Neill
fonte
-2

Verifique se o arquivo settings.XML na pasta .m2 é válido primeiro. Depois de limpar o repositório usando o comando abaixo no cmd

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