Что может быть причиной «ошибка передачи файла» в Maven? - PullRequest
10 голосов
/ 30 июня 2010

Я установил maven 2.2.1 на мою машину с Debian и получаю следующую ошибку

[WARNING] repository metadata for: 'org.apache.maven.plugins' could not be retrieved  from repository: central due to an error: Error transferring file: repository.exoplatform.org

Что я смог найти в связи с этой проблемой, так это то, что она обычно вызвана тем, что неправильно настроены параметры прокси-сервера, или брандмауэром, блокирующим трафик, но у меня его нет на этой машине. Кроме того, у меня есть тот же файл настроек на моем компьютере с Windows, и он отлично работает.

Любые предложения будут с благодарностью, так как я в тупике.

exo@melb-web:~/test$ mvn -v
Apache Maven 2.2.1 (r801777; 2009-08-07 05:16:01+1000)
Java version: 1.5.0_22
Java home: /usr/local/bin/jdk1.5.0_22/jre
Default locale: en_AU, platform encoding: UTF-8
OS name: "linux" version: "2.6.22-3-amd64" arch: "i386" Family: "unix"
exo@melb-web:~/test$ mvn archetype:generate
[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'archetype'.
[INFO] org.apache.maven.plugins: checking for updates from central
[WARNING] repository metadata for: 'org.apache.maven.plugins' could not be retrieved from repository: central due to an error: Error transferring file: repository.exoplatform.org
[INFO] Repository 'central' will be blacklisted
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] The plugin 'org.apache.maven.plugins:maven-archetype-plugin' does not exist or no valid version could be found
[INFO] ------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO] ------------------------------------------------------------------------
[INFO] Total time: < 1 second
[INFO] Finished at: Wed Jun 30 10:18:33 EST 2010
[INFO] Final Memory: 2M/136M
[INFO] ------------------------------------------------------------------------

* РЕДАКТИРОВАТЬ *

Я попытался удалить файл settings.xml и создать новый проект maven. Я получил следующее

exo@melb-web:~/test$ mvn archetype:generate
[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'archetype'.
[INFO] org.apache.maven.plugins: checking for updates from central
[WARNING] repository metadata for: 'org.apache.maven.plugins' could not be retrieved from repository: central due to an error: Error transferring file: repo1.maven.org
[INFO] Repository 'central' will be blacklisted
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] The plugin 'org.apache.maven.plugins:maven-archetype-plugin' does not exist or no valid version could be found
[INFO] ------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO] ------------------------------------------------------------------------
[INFO] Total time: < 1 second
[INFO] Finished at: Wed Jun 30 11:40:26 EST 2010
[INFO] Final Memory: 1M/136M
[INFO] ------------------------------------------------------------------------

Я думаю, это исключает проблему с settings.xml или pom. Есть ли способ получить больше информации о том, почему maven не может подключиться к хранилищу?

Ответы [ 7 ]

9 голосов
/ 30 июня 2010

Я пробовал те же команды и получаю одно и то же сообщение об ошибке, поэтому я запустил с использованием флага отладки Это дает другое корневое исключение в зависимости от настроек прокси и т. Д. Попробуйте выполнить то же самое, если получите лучший подробный вывод.

mvn -X archetype:generate

Случай 1:

Устройство не подключено к сети (кабель отключен) выдает сообщение об отладке

[DEBUG] Exception
org.apache.maven.wagon.TransferFailedException: Error transferring file
...
Caused by: java.net.UnknownHostException: repo1.maven.org
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:177)
[INFO] Repository 'central' will be blacklisted

Дело 2:

Машина, подключенная с неверным прокси, выдает отладочное сообщение

[DEBUG] Exception
org.apache.maven.wagon.TransferFailedException: Error transferring file
...
Caused by: java.net.ConnectException: Connection timed out: connect
    at java.net.PlainSocketImpl.socketConnect(Native Method)
[INFO] Repository 'central' will be blacklisted

Здесь ошибка может быть 403, ошибка сброса соединения или авторизации или доступа запрещена

Дело 3:

Машина с прямым подключением к интернету

[DEBUG] Trying repository central
Downloading: http://repo1.maven.org/maven2/org/apache/maven/plugins/maven-archet
ype-plugin/2.0-alpha-5/maven-archetype-plugin-2.0-alpha-5.jar
[DEBUG]   Artifact resolved
[INFO] ------------------------------------------------------------------------

и так до тех пор, пока оно не заработает.

3 голосов
/ 02 июля 2010

Просто чтобы закрыть этот цикл - это оказалось проблемой с библиотеками, которые debian имел в наличии для использования java для разрешения имен хостов.Исправление заключается в применении нового libdns для Java, как описано здесь http://www.ehow.com/how_4747553_fix-unknownhostexception-java-applications-ubuntu.html. После того, как я это сделал, я могу запустить mvn с jdk5 и jdk6.

2 голосов
/ 30 июня 2010

Я думаю, это связано с настройками репозитория в pom, родительском pom или в вашем файле ~ / .m2 / settings.xml.Также возможно, что репо в exoplatform неправильно сконфигурировано.

Без заданных репозиториев плагин архетипа будет взят из repo1.maven.org

http://repo1.maven.org/maven2/org/apache/maven/plugins/maven-archetype-plugin/

0 голосов
/ 23 сентября 2016

Не забудьте отключить VPN , особенно для китайцев . Это проблема рукопожатия SSL.

0 голосов
/ 03 января 2013

Быстрое «решение» - дать полное имя плагина в команде:

mvn org.mortbay.jetty: maven-jetty-plugin: run

0 голосов
/ 21 марта 2012

Обновите до maven 3.0.4 или выше, если это возможно.

Я изучил исходный код maven: в maven 2.2.1 есть проблема с начальной загрузкой. Прокси выглядит как HTTPS при доступе к HTTPS-серверам, но вы можете иметь только один прокси в качестве активного. Нет возврата к HTTP-прокси. В maven 3.0.4 эта проблема, кажется, решена.

0 голосов
/ 30 ноября 2010

У меня была такая же проблема.В моем случае это был фактически оставшийся файл settings.xml из предыдущей работы.Я сделал резервную копию и удалил ~ / .m2 / settings.xml, и сборка прошла очень хорошо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...