Подтвердить что ты не робот

Файлы Maven имеют .lastUpdated как расширение

У меня есть настройка Eclipse с m2eclipse и subversive. Я импортировал проект maven2 из svn. Но я получаю сообщение об ошибке, что отсутствует целая группа артефактов (например: Отсутствует артефакт org.springframework: spring -test: jar: 3.0.1.RELEASE: test).

Если я посмотрю в своем репозитории, я вижу там файлы jar, но у них есть дополнительное расширение .lastUpdated. Почему maven добавляет .lastUpdated к банкам? И что еще более важно: как я могу это исправить?

Не упоминается тип lastUpdated в моих POM.

4b9b3361

Ответ 1

Эти файлы указывают Maven, что он пытался получить архив, загрузив, но не увенчался успехом. Чтобы сохранить пропускную способность, он не будет повторять попытку до тех пор, пока не истечет определенный период времени, закодированный в файле. Переключатель командной строки -U заставляет maven выполнять обновление до периода повтора. Это может потребоваться, если вы попытались построить в отключенном состоянии от сети.

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

Ответ 2

Как rperez, я использую для удаления всех этих файлов .lastUpdated. В Linux я создал немного script, чтобы это было просто:

find -name \*.lastUpdated -exec rm -fv {} +

Просто создайте файл с предыдущим контентом и поместите его в локальный репозиторий Maven. Обычно это будет ~/.m2/repository.

Ответ 3

Я установил Maven2 и выполнил компиляцию mvn из командной строки. Это, похоже, решило проблему

Ответ 4

Если вы столкнулись с этой проблемой, и вы используете Nexus, возможно, у вас есть правило маршрутизации, которое неверно. Я ударил это сам, и файлы, которые он загружал, были правильно названы, на соответствующих URL-адресах, на которые он смотрел, но все они были с расширением .lastUpdated и сообщением об ошибке как содержимое.

Ответ 5

у вас может возникнуть проблема с некоторыми из артефактов, которые будут извлечены из репозитория. например, spring имеет свой собственный репозиторий. это xtension добавляется, когда артефакт не может быть полностью загружен. добавьте репозиторий фреймов spring к вашему pom или settings.xml, удалите папку, в которую входят разбитые банки, и начните снова

Ответ 6

Откройте свой терминал, перейдите в каталог проекта Eclipse и запустите:

mvn install

Если mvn install не обновляет ваши зависимости, вызовите его с переключателем для принудительного обновления:

mvn install -U

Это гораздо более безопасный подход по сравнению с подделкой файлов maven при удалении ".lastUpdated".