Ошибка Maven «Сбой при передаче …»

#maven #artifactory

#eclipse #maven

Вопрос:

Я пытаюсь настроить проект с помощью Maven (m2eclipse), но я получаю эту ошибку в Eclipse:

Описание Тип расположения пути к ресурсу Не удалось вычислить план сборки: сбой при передаче org.apache.maven.plugins:maven-compiler-plugin:pom: 2.0.2 из http://repo1.maven.org/maven2 был кэширован в локальном репозитории, разрешение не будет повторно предпринято до тех пор, пока не истечет интервал обновления центра или не будут выполнены принудительные обновления. Исходная ошибка: не удалось передать артефакт org.apache.maven.plugins:maven-compiler-plugin:pom: 2.0.2 из / в центральный (http://repo1.maven.org/maven2 ): Не получен ответ после 60000 ExampleProject Неизвестная проблема Maven

Есть идеи? Было бы полезно, если бы вы могли показать мне, как проверить, все ли настроено нормально…

Ответ №1:

Удалите все ваши неудачные загрузки:

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

Для Windows:

 cd %userprofile%.m2repository
for /r %i in (*.lastUpdated) do del %i
  

Затем щелкните правой кнопкой мыши на вашем проекте в eclipse и выберите Maven-> «Обновить проект …», убедитесь, что в появившемся диалоговом окне установлен флажок «Обновить зависимости», и нажмите «ОК».

Комментарии:

1. В Windows я использовал диалоговое окно проводника для поиска *.lastUpdated в %USERPROFILE%.m2 затем удалил файлы, которые Eclipse назвал проблемными. Сработало отлично! Я уверен, что вы могли бы сделать это с помощью findstr или аналогичного, но графический интерфейс работал.

2. В Windows я вызвал проводник Windows и щелкнул правой кнопкой мыши .m2 -> Поиск… . Я ввел *.lastUpdated в имя файла и «Не удалось передать» в текстовое поле «Слово или фраза в файле».

3. В Windows эти файлы находятся внутри <user-dir>/.m2/repository/org/example/myTool/1.01 (вы видите трюк). Просто удалите их (the *.lastUpdated ) вручную и обновите зависимости.

4. В Eclipse Luna (4.4 milestone) в Windows я обнаружил, что после удаления *.lastUpdated мне также нужно было заставить m2eclipse переиндексировать локальный репозиторий (через Eclipse-> Window-> Preferences-> Maven-> Настройки пользователя: локальный репозиторий: переиндексация)

5. после того, как я часами дергал за волосы… наконец-то это решение сработало для меня в eclipse neon …. спасибо

Ответ №2:

Это сработало и для меня в Windows.

  1. Найдите репозиторий {user}/.m2/ (используя Juno / Win7 здесь)
  2. В поле поиска в правом верхнем углу окна введите «.lastupdated». Windows будет просматривать все вложенные папки для этих файлов в каталоге. (Я не просматривал кеш.)
  3. Удалите их, щелкнув правой кнопкой мыши> Удалить (я сохранил все lastupdated.properties).
  4. Затем вернитесь в Eclipse, щелкните правой кнопкой мыши по проекту и выберите Maven> Обновить проект. Я выбрал «Принудительное обновление снимков / релизов». Нажмите Ok, и зависимости, наконец, разрешены правильно.

Комментарии:

1. Также обнаружено, что если у вас неправильные ссылки (синтаксис или номер версии) на библиотеки, они не будут загружаться. Используйте онлайн-инструмент поиска в репозитории Maven, чтобы убедиться, что вы правильно ссылаетесь на библиотеки в вашем pom.xml .

2. Это сработало для Windows. Большое спасибо, чувак! Но эта проблема время от времени повторяется. Есть ли у нас какое-либо постоянное исправление?

3. @iowatiger08 что произойдет, если я также удалю файлы lastupdated.properties?

4. @garg10may Я не думаю, что их удаление будет иметь большое значение, потому что Maven повторно заполнит их, когда выполнит следующее «обновление».

5. @iowatiger08, возникают ошибки, если я использую версию типа <version>[1.0.0,2.0.0)</version> в моем pom-файле, но я меняю версию на 1.6.10, ошибки исчезли. Почему это происходит?

Ответ №3:

В Eclipse: щелкните правой кнопкой мыши проект-> Maven-> Обновить проект-> Установите флажок «Принудительное обновление снимков / выпусков». Нажмите OK.

Ответ №4:

Спасибо за ответы, но после еще нескольких поисков я смог устранить проблему. Оказалось, что мне пришлось удалить один из «* .lastUpdated», который препятствовал обновлению одного из моих плагинов (Maven Surefire Plugin). Я сделал это вручную, потому что maven clean, по-видимому, этого не делал.

Проблема заключалась в том, что файл «* .lastUpdated» для плагина блокировал проверку maven на наличие обновлений и не позволял загружать необходимый jar.

Комментарии:

1. Может быть, это очевидно, но я просто хотел бы добавить: после ручного поиска указанного файла * .lastUpdated в репозитории maven (в моем случае это файл surefire) и его удаления необходимо очистить проект в Eclipse.

Ответ №5:

Попробуйте выполнить

 mvn -U clean
  

или запустите> Maven Clean и Maven> Обновить снимки из контекстного меню проекта в eclipse

Ответ №6:

Это сработало для меня в Windows:

  1. Найдите {user}/.m2/repository
  2. В поле поиска в правом верхнем углу окна введите « .lastupdated «. Windows будет просматривать все вложенные папки для этих файлов в каталоге.
  3. Удалите все .lastupdated файлы.
  4. Вернитесь в Eclipse, щелкните правой кнопкой мыши по проекту и выберите Maven > Update Project .
  5. Выберите « Force Update of Snapshots/Releases «.
  6. Нажмите Ok, и зависимости, наконец, разрешатся правильно.

Комментарии:

1. Я пользователь Windows. Это решение сработало для меня!

Ответ №7:

В моем случае. Проблемы по той же причине. Я вижу, что проблема связана с прокси и брандмауэром.

Вот мое
решение:
1. установите прокси для Maven и Eclipse
2. Найдите репозиторий {user}/.m2/ и удалите все файлы * .
lastupdated 3. Вернитесь в Eclipse, щелкните правой кнопкой мыши по проекту и выберите Maven> Обновить проект. > Выберите «Принудительное обновление снимков / выпусков».

Если проект все еще существует ошибка. пример: вот мои проблемы после всего вышеперечисленного шага

 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
  

Я использую это решение, полезное для меня:

1. Найдите репозиторий в https://mvnrepository.com /
2. Скопируйте зависимость в мой *.poml примера
проекта

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

3. Создайте проект. отсутствующая зависимость будет загружена в локальный репозиторий.

4. Вернитесь в Eclipse, щелкните правой кнопкой мыши по проекту и выберите Maven> Обновить проект. > Выберите «Принудительное обновление снимков / выпусков».
=>> Ошибка устранена
5. Я удаляю зависимости на шаге 2 после завершения и разрешения. Выполнено

Ответ №8:

Это случилось со мной, когда я нахожусь за брандмауэром. Зависимости иногда не загружаются, когда вы работаете в Eclipse IDE. Убедитесь, что вы используете mvn clean install -U для решения проблемы. После этого вы увидите загрузку зависимостей.

Комментарии:

1. Как только вы сделаете это на своем терминале, перейдите в Eclipse, выберите project и «Обновить проект». Это должно решить проблему, не создавая трудностей с поиском и удалением «.lastUpdated».

Ответ №9:

Если вы находитесь за прокси-сервером, вам необходимо обновить settings.xml файл (в папке conf вашего MAVEN_HOME сам файл содержит информацию о настройках прокси-сервера) и, кроме того, вам может потребоваться обновить сетевые настройки Eclipse (Окно-> Настройки …-> тип сетевых подключений).

Попробуйте использовать -X или —debug для получения выходных данных отладки, это может предоставить дополнительную информацию о проблеме.

Ответ №10:

У меня была аналогичная проблема в Eclipse 3.6 с m2eclipse.

Не удалось рассчитать план сборки: сбой при передаче org.apache.maven.plugins:maven-resources-plugin: jar: 2.4.3 из http://repo1.maven.org/maven2 был кэширован в локальном репозитории, разрешение не будет повторно предпринято до тех пор, пока не истечет интервал обновления центра или не будут выполнены принудительные обновления. Исходная ошибка: не удалось передать артефакт org.apache.maven.plugins:maven-resources-plugin: jar: 2.4.3 из центра (http://repo1.maven.org/maven2 ): ConnectException project1 Неизвестная проблема Maven

Удаление всех файлов maven * .lastUpdated из моего локального хранилища (как предложил Дипак Джой) решило эту проблему.

Ответ №11:

У меня была аналогичная проблема только с несколькими проектами в моей рабочей области. В других проектах с почти идентичными POM вообще не было ошибки. Ни один из других перечисленных ответов не устранил мою проблему. Я, наконец, наткнулся на удаление / повторное применение природы Maven для каждого проекта, и ошибки исчезли:

Для каждого проекта, имеющего pom с ошибкой «разрешение не будет повторно использовано …»:

  1. Щелкните правой кнопкой мыши по проекту в Eclipse и выберите Maven-> Отключить природу Maven
  2. Щелкните правой кнопкой мыши на проекте в Eclipse и выберите Настроить-> Преобразовать в проект Maven

Ответ №12:

Это случилось со мной, и у вас может быть два решения для этого

  1. Если ваш проект состоит из какой-либо внешней или специфичной для проекта зависимости, вам необходимо вручную добавить его в папку репозитория M2, которая находится по адресу C:UsersMohit .Singh.m2 папка репозитория, а затем вам нужно запустить mvn eclipse: eclipse, а затем mvn clean install из папки проекта

  2. если у вас нет какой-либо зависимости от wxternal или project sppecific, вы можете импортировать проект в eclipse как существующий проект maven, затем щелкните правой кнопкой мыши проект -> ПЕРЕЙДИТЕ в maven -> Нажмите обновить проект, появится окно, проверьте опцию принудительной загрузки моментального снимка и нажмите OK

Ответ №13:

Укажите правильный maven setting.xml путь в затмении.

  • Windows -> Настройки -> Maven -> Настройки пользователя

Введите правильный setting.xml путь в текстовом поле пользовательских настроек

Комментарии:

1. Добавьте установку maven также в настройки eclipse maven

Ответ №14:

просто удалите архетип в maven local repository . Как сказано выше, это происходит в случае неудачной загрузки архетипа.

Ответ №15:

Для меня я просто добавил приведенный ниже XML-код в POM.xml досье. И после того, как я щелкнул правой кнопкой мыши в проекте -> Maven -> Обновить проект, и я проверил принудительное обновление снимков / релизов **, и все сработало

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

Ответ №16:

settings.xml для прокси-сервера? и в eclipse есть глобальный локальный профиль maven, добавьте settings.xml

Комментарии:

1. Можете ли вы отредактировать свой ответ и добавить больше деталей? Приведите пример того, что нужно добавить settings.xml и где это можно найти. Кроме того, имейте в виду, что этому вопросу 10 месяцев.

Ответ №17:

Вы можете удалить саму папку .m2 и заставить MyEclipse повторно загрузить все зависимости при запуске. Перейдите в окно> Настройки> MyEclipse> Maven4MyEclipse.

Ответ №18:

  • Вышеуказанная ошибка произошла из-за удаления «maven-compiler-plugin 2.0.2» из репозитория maven.
  • Для меня вышеуказанная ошибка устраняется, когда я понижаю версию ‘maven-compiler-plugin’ до версии 2.0 или 2.0.1.

Ответ №19:

для mac

Я удалил все старые неудачные загрузки maven на моем Mac также было несколько версий maven

найти ~/.m2 -имя «*.lastUpdated» -exec grep -q «Не удалось передать» {}; -print -exec rm {} ;

после этого я просто обновил свой eclipse с помощью

справка -> проверить наличие обновлений

и проблема решена для меня

основной причиной этой проблемы является сбой старых обновлений, которые не позволяют загружать archetype, поэтому, если вы попытаетесь создать проект в любом архетипе maven, он завершится неудачей

Ответ №20:

создайте файл delete_lastUpdated_and_remote.sh (используйте n ):

 #!/bin/bash
find $(cd $(dirname $0); pwd) -name "*.lastUpdated" -type f -print -exec rm -rf {} ;
find $(cd $(dirname $0); pwd) -name "_remote.repositories" -type f -print -exec rm -rf {} ;
  

Поместите его в локальное репозиторий Maven, например, %userprofile%.m2repository или ~/.m2/repository , и запустите его.

В Windows вы также должны установить Git для запуска sh file.

Я также использую его в задании Дженкинса.

Ответ №21:

Я получил эту ошибку для плагина ниже:

 <groupId>org.codehaus.mojo</groupId>  
<artifactId>jaxb2-maven-plugin</artifactId>  
<version>2.5</version>  
  

Я изменил версию тега на:

 <version>2.5.0</version>  
  

Затем откройте контекстное меню вашего проекта в eclipse и выберите Maven> «Обновить проект …», убедитесь, что в диалоговом окне установлен флажок «Обновить зависимости», и нажмите кнопку «ОК».

Ответ №22:

В моем случае я получил это сообщение об ошибке в spring tool 4

Исключение ArtifactTransferException: org.codehaus.plexus:сплетение-интерполяция: jar: 1.26 не удалось передать из https://repo.maven.apache.org/maven2 во время предыдущей попытки. Этот сбой был кэширован в локальном репозитории, и разрешение не повторяется до тех пор, пока не истечет интервал обновления центра или обновления не будут принудительными. Исходная ошибка: не удалось перенести артефакт org.codehaus.plexus: plexus-интерполяция: jar: 1.26 из / в центральный (https://repo.maven.apache.org/maven2 ): repo.maven.apache.org java.lang.отразить.Исключение InvocationTargetException

Вот решение

шаг 01 — сначала закройте приложение spring tool

шаг 02 — перейти к пути C:UsersUser и удалите папку .m2

расположение папки

шаг 03 — Теперь перейдите к исследованию пакета и выберите свой проект

Проводник пакетов

шаг 04 — Теперь щелкните правой кнопкой мыши на вашем проекте и перейдите в Maven и нажмите Обновить проект

Обновить проект

Как удалить Spring Tool 4

шаг 01 — нажмите на справку и перейдите к о Spring Tool Suite 4

введите описание изображения здесь

шаг 02 — Теперь нажмите на сведения об установке

Подробности установки

шаг 03 — внутри этого вы можете увидеть все установленное программное обеспечение, просто нажмите Ctrl A, чтобы выбрать все и нажмите Удалить

Удалить

Ответ №23:

Решение, которое работает для меня, заключается в следующем:

  1. Скопируйте зависимость в pom.

     <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-archiver</artifactId>
        <version>2.5</version>
    </dependency>
      
  2. Щелкните правой кнопкой мыши на вашем проекте

  3. Выберите Maven
  4. Выберите Обновить проект
  5. Выберите Принудительное обновление снимков / релизов

Ответ №24:

Удалите все файлы внутри репозитория.

Перейдите к C:UsersDELL.m2repository , выберите все файлы и удалите их.

Затем перейдите в project, щелкните правой кнопкой мыши maven update project (Alt F5). Он загрузит все зависимые файлы внутри репозитория.

Ответ №25:

Пожалуйста, убедитесь, что настройки.Сначала действителен XML-файл в папке .m2, затем после очистки репозитория с помощью приведенной ниже команды в cmd

 cd %userprofile%.m2repository
for /r %i in (*.lastUpdated) do del %i