Не удалось передать артефакт org.apache.maven.plugins: maven-surefire-plugin: pom: 2.7.1 из/в центральный (http://repo1.maven.org/maven2)
Я создал новый проект maven в SpringSource Tool Suite. Я получаю эту ошибку в своем новом проекте maven.
Невозможность переноса org.apache.maven.plugins: maven-surefire-plugin: pom: 2.7.1 из http://repo1.maven.org/maven2 был кэширован в локальном репозитории, разрешение не будет повторно загружено до тех пор, пока интервал обновления центрального истечения или обновления вынуждены. Исходная ошибка: Не удалось передать артефакт org.apache.maven.plugins: maven-surefire-plugin: pom: 2.7.1 из/в центральный (http://repo1.maven.org/maven2): время подключения
pom.xml:
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.test.app</groupId>
<artifactId>TestApp</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>TestApp</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
Settings.xml
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<pluginGroups>
</pluginGroups>
<proxies>
<proxy>
<id>optional</id>
<active>true</active>
<protocol>http</protocol>
<username>user</username>
<password>pass</password>
<host>ip</host>
<port>80</port>
<nonProxyHosts>local.net|some.host.com</nonProxyHosts>
</proxy>
</proxies>
<servers>
</servers>
<mirrors>
<mirror>
<id>mirrorId</id>
<mirrorOf>repositoryId</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo1.maven.org/maven2/</url>
</mirror>
</mirrors>
<profiles>
</profiles>
</settings>
Обратите внимание, что я могу его создать. В pom.xml отображается внутри пакета IDE. Все решения?
Ответы
Ответ 1
Упростите вещи, используя следующие settings.xml
:
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
http://maven.apache.org/xsd/settings-1.0.0.xsd">
<proxies>
<proxy>
<id>myproxy</id>
<active>true</active>
<protocol>http</protocol>
<username>user</username> <!-- Put your username here -->
<password>pass</password> <!-- Put your password here -->
<host>123.45.6.78</host> <!-- Put the IP address of your proxy server here -->
<port>80</port> <!-- Put your proxy server port number here -->
<nonProxyHosts>local.net|some.host.com</nonProxyHosts> <!-- Do not use this setting unless you know what you're doing. -->
</proxy>
</proxies>
</settings>
В Linux/Unix поместите его под ~/.m2/settings.xml
. Под Windows поместите его под c:\documents and settings\youruser\.m2\settings.xml
или c:\users\youruser\.m2\settings.xml
.
Вам не нужны разделы <mirrors/>
, <profiles/>
и <settings/>
, если вы действительно не знаете, для чего они нужны.
Ответ 2
Это решено для меня, когда я обновляю maven и проверяю параметр " Force update of Snapshots/Releases " в Eclipse. это очищает все ошибки. Поэтому щелкните правой кнопкой мыши проект → Maven → проект обновления, затем проверьте вышеописанный вариант → Хорошо. Надеюсь, это поможет вам.
Ответ 3
Похоже, ваш Maven не может подключиться к репозиторию Maven по адресу http://repo1.maven.org/maven2.
Если вы используете прокси-сервер и можете получить доступ к ссылке с браузером, то те же настройки должны быть применены к Spring Source Tool Suite (если вы работаете в комплекте) или Maven.
Для настройки прокси-сервера Maven создайте .m2
settings.xml
в каталоге .m2
со следующими подробностями
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
http://maven.apache.org/xsd/settings-1.0.0.xsd">
<proxies>
<proxy>
<active>true</active>
<protocol>http</protocol>
<host>PROXY</host>
<port>3120</port>
<nonProxyHosts>maven</nonProxyHosts>
</proxy>
</proxies>
</settings>
Если вы не используете прокси-сервер и можете получить доступ к ссылке с браузером, удалите все настройки прокси-сервера, описанные выше.
Ответ 4
Для первой ошибки вы можете просто очистить свой кеш локального хранилища, чтобы принудительно загрузить его из основного репозитория, а не проверять локальный.
Для второй ошибки, если вы находитесь за прокси-сервером, вы должны настроить его таким образом Настройка прокси-сервера, иначе у вас есть сетевая проблема.
Ответ 5
Для меня решение просто удалило конкретную папку, которая дает ошибку от ~/.m2/repository/org/hsqldb/
После удаления папки hsqldb
я создал проект, и все в порядке.
Ответ 6
Что помогло мне в предложениях @carlspring (создайте файл settings.xml для настройки вашего прокси-сервера http:
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
http://maven.apache.org/xsd/settings-1.0.0.xsd">
<proxies>
<proxy>
<id>myproxy</id>
<active>true</active>
<protocol>http</protocol>
<username>user</username> <!-- Put your username here -->
<password>pass</password> <!-- Put your password here -->
<host>123.45.6.78</host> <!-- Put the IP address of your proxy server here -->
<port>80</port> <!-- Put your proxy server port number here -->
<nonProxyHosts>local.net|some.host.com</nonProxyHosts> <!-- Do not use this setting unless you know what you're doing. -->
</proxy>
</proxies>
</settings>
И затем обновляющий проект maven, как это было предложено @Peter T:
"Принудительное обновление снимков/выпусков" в Eclipse. это очищает все ошибки. Поэтому щелкните правой кнопкой мыши проект → Maven → проект обновления, затем проверьте вышеописанный вариант → Хорошо. Надеюсь, это поможет вам.
Ответ 7
Кажется, у меня была сетевая проблема. На вашей стороне, или на стороне Maven, или где-нибудь посередине. Повторите попытку позже.
Если ошибка постоянна, проверьте настройки сети. Если вы находитесь за прокси-сервером, вам нужно следующее: ~/.m2/settings.xml:
<proxies>
<proxy>
<id>optional</id>
<active>true</active>
<protocol>http</protocol>
<username>proxyuser</username>
<password>proxypass</password>
<host>proxy.host.net</host>
<port>80</port>
<nonProxyHosts>local.net|some.host.com</nonProxyHosts>
</proxy>
</proxies>
Ответ 8
Я настоятельно рекомендую использовать Maven Repository Manager, например Nexus. Это поможет вам получить стабильные и воспроизводимые сборки с Maven. Поскольку диспетчер репозитория обычно находится в вашей локальной сети, вам не нужно настраивать параметры прокси-сервера, но вам нужно определить некоторые другие конфигурации:
http://www.sonatype.com/books/nexus-book/reference/maven-sect-single-group.html
http://maven.apache.org/repository-management.html
Ответ 9
Вначале я начал использовать maven на моей машине. Получена эта ошибка: Could not transfer artifact from/to central (https://repo.maven.apache.org/maven2) No such file or directory
Очистил каталог ~/.m2/репозиторий. Не испытывайте эту проблему снова
Ответ 10
Если ни одна из вышеперечисленных работ не попытается ответить на этот вопрос и ответит:
Ошибка Maven "Ошибка передачи..."
и удалите файлы .lastUpdated
.
Ответ 11
- Обновите проект Maven и установите флажок "Принудительное обновление моментальных снимков/выпусков", оно устранит ошибки.
- Если нет, Maven очистит и установит проект.
- Тем не менее ошибка не удаляется, повторите шаг 1.
Это сработало для меня:)
Ответ 12
Эта проблема была решена следующими шагами -
- Перейдите в локальный репозиторий m2 и найдите каталог org/apache/maven/plugins/maven-surefire-plugin.
- Удалите проблемную версию.
- maven обновить проект, а затем загрузить его снова.
Ответ 13
У нас есть набор прокси на уровне компании.
После отключения прокси-сервера в Internet Explorer эта проблема была решена (похоже, она отключена на уровне "system" ), поэтому все другие браузеры также выберут это изменение.
Теперь я могу выдавать команды MVN из приглашения CMD, и у меня нет проблем, пока, например,
"Скачивание: https://repo.maven.apache.org/maven2/org/apache/maven/archetypes/maven-archetype-webapp/1.0/maven-archetype-webapp-1.0.pom"
... это вызывало "Сбой сборки"
Отключение прокси-сервера в IE должно выполняться ежедневно в нашем случае, потому что при каждом запуске системы он устанавливается
Ответ 14
Если вы находитесь в windows os и не нуждаетесь в прокси-сервере
затем удалите всю настройку прокси-сервера
<proxies>
<proxy>
..................
</proxy>
</proxies>
и замените на
<proxies/>
а затем выполните чистую сборку maven
Ответ 15
Если вы не находитесь за прокси-сервером и все еще получаете ошибку тайм-аута соединения, проверьте настройки брандмауэра/антивирус. Иногда брандмауэр может блокировать подключение от любого инструмента (например, Eclipse/STS и т.д.)
Ответ 16
Во-первых, вы должны проверить, установлен ли инструмент Maven на вашем компьютере или нет!