Wget не работает, чтобы загрузить файл JAR из репозитория Maven - PullRequest
10 голосов
/ 29 сентября 2011

Я пытаюсь загрузить один jar-файл из репозитория maven по указанному ниже URL-адресу.

http://repo1.maven.org/maven2/com/google/guava/guava-testlib/10.0/guava-testlib-10.0.jar

  • Загрузка в браузере работает нормальнои я получаю файл, как и ожидалось.

  • 'wget' загружает что-то, но файл, который я получаю, кажется недействительным.Запуск 'jar -tf' для загруженного файла дает 'ZipException: ошибка при открытии zip-файла'.

  • Загрузка файла программно из Java ('InputStream' из URL-адреса, записывающего в ''FileOutputStream ') загружает что-то и создает файл.Открывая это с WinZip / 7-Zip, он, кажется, содержит один файл с именем 'guava-testlib-10.0', который выглядит как архив jar, который я ожидал получить.

  • wget другой jar иногда работает, как и ожидалось, хотя бы иногда (с -U строкой пользовательского агента)

Это какое-то хитрое взаимодействие между wget / maven или Java / maven?Это неправильно сформированный файл jar, который мой браузер правильно понимает и загружает?Оба из них кажутся мне немного неправдоподобными.

1 Ответ

12 голосов
/ 29 сентября 2011

wget обычно блокируется из центрального репозитория Maven, потому что некоторые люди не играют красиво и стараются слишком много играть.Попробуйте установить пользовательский агент:

wget -U "Any User Agent" http://repo1.maven.org/maven2/com/google/guava/guava-testlib/10.0/guava-testlib-10.0.jar
...