2015-04-27 4 views
1

При запуске Maven установки в Eclipse, для моего XXXXClient (веб-службы) проекта, я неоднократно получил это сообщение: " архив для требуемой библиотеки:«X: /XXXX/XXXX/.m2/repository/javax/enterprise/ cdi-api/1.0-SP4-redhat-4/cdi-api-1.0-SP4-redhat-4.jar 'в проекте «XXXXClient» не может быть прочитан или не является допустимым ZIP-файлом XXXXClient Построить путь Ошибка пути сборки " для следующих баночек (зависимостей в моем проекте):Архив Maven не может быть прочитан или недействителен Zip-файл?

  • JBoss-эль-api_2.2_spec-1.0.0.Final.jar
  • КДИ-ап я-1,0-SP4-RedHat-4.jar
  • JBoss-JSF-api_2.1_spec-2.1.28.Final-RedHat-1.jar
  • JBoss-JSTL-api_1.2_spec-1.0.6.Final- RedHat-1.jar
  • wsdl4j-1.6.3.redhat-1.jar
  • JBoss-SAAJ-api_1.3_spec-1.0.3.Final-RedHat-1.jar
  • JBoss-JAXWS-api_2. 2_spec-2.0.2.Final-RedHat-1.jar
  • picketbox-infinispan-4.0.19.SP8-RedHat-1.jar
  • JBoss-а-контроллер-клиент-7.4.0.Final-redhat- 19.jar
  • JBoss-каротаж 3.1.4.GA-RedHat-1.jar
  • Resteasy-JAXB-провайдер 2.3.8.Final-RedHat-3.jar
  • асинхронного HTTP-сервлет-3.0-2.3.8 .Final-RedHat-3.jar
  • Resteasy-jaxrs-2.3.8.Final-RedHat-3.jar
  • Resteasy-многочастному-поставщик-2.3.8.Final-RedHat-3.jar

Большинство этих банок можно найти в репозитории Maven Redhat: https://maven.repository.redhat.com/nexus/content/groups/product-techpreview/

В моем Maven settings.xml у меня есть re dhat-techpreview-all-repository и redhat-techpreview-eap-repository имеют активные профили. Оба профиля настроены:
<releases>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</releases>
<snapshots>
<enabled>false</enabled>
<updatePolicy>never</updatePolicy>
</snapshots>

Я заметил:

  • Все банки выше упоминалось имели размер 57K и
  • бросали ошибки при выполнении следующей команды: банку -tvf [jarfile.jar].
    Я также пробовал: mvn clean install -U (для принудительной перезагрузки банок), но он ничего не изменил.

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

Почему у меня были поврежденные файлы jar в первую очередь и Был ли лучший способ решить эту проблему?

Спасибо заранее,

+1

Похоже, вы исправили проблему, но избавились от доказательств (неудобные банки), поэтому будет очень сложно сказать, что было не так. – dcsohl

+0

Привет, на самом деле я переименовал каждую банку с расширением .jar.old. Я открою старые и новые и сравню их. 1+ для того, чтобы дать мне эту идею. – Alain

ответ

3

Я считаю, что флаг «-U» заставит загрузку недостающей JARs, но это возможно испорченный вариант, который будет добавлен в хранилище (например, сетевые сбои во время загрузки), который флаг -U не будет исправлен. Когда у меня была эта проблема, прежде чем я смог ее исправить, удалив локальный репозиторий .m2 и разрешив Maven перезагрузить их.

+0

Привет, вот что я думал, что это был сетевой глюк. Невозможно узнать, сколько файлов могло быть затронуто? В крайнем случае, я всегда могу удалить локальный .m2. Спасибо – Alain

+0

Я не знаю, как проверить файлы в репозитории в целом. Если вы хотите понять, сколько файлов затронуто, вы можете попробовать удалить файлы по одному? Репозиторий .m2 предназначен для работы в качестве кеша, поэтому, как предполагается, нет проблем, чтобы стереть его. – hugh

+0

Работал для меня, удалив весь репозиторий .m2. (Не работает, если удаляется только пакет проблем) – another

Смежные вопросы