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

Архив для требуемой библиотеки не может быть прочитан или не является допустимым ZIP файлом

Прежде чем приступить к проблеме, позвольте мне объяснить, что я сделал, что приземлило меня на проблему.

  • Я создал учетную запись на github и создал репозиторий с именем Android.
  • Затем я установил github client в мои окна 7.
  • Затем я открыл этот клиент, предоставил мою аутентификацию и клонировал репозиторий в локальный каталог C:\Users\Aniket\Documents\GitHub\Android (в этой папке есть папка .git).
  • Затем я пошел в свой Eclipse ADT и установил плагин EGit, как описано здесь. Также я
  • Затем в Eclipse я правой кнопкой мыши на проекте TicTacToe перейдите в Team->Share Project и укажите путь к репозиторию i.e C:\Users\Aniket\Documents\GitHub\Android.
  • Мой проект был добавлен в локальный репозиторий и в моем клиенте github он показывает мне все возможности для фиксации файла в реальном репозитории на сайте github.
  • Но мой проект внезапно показывает ошибку с красным '!' подписать его.

    Описание → Архив для требуемой библиотеки: 'C:/Users/Aniket/AndroidWorkspace/TicTacToe /libs/android -support-v4.jar 'в проекте "TicTacToe" не может быть прочитан или не является допустимым ZIP-архивом

    Ресурс → TicTacToe

    Местоположение пути → путь сборки

    Тип → Проблема с контуром сборки

Примечание. Ошибка была одной строкой, отображаемой в консоли ошибок на Eclipse. Я просто разделил его на удобочитаемость.

Даже после отсоединения репозитория он показывает эту ошибку.

Кто-нибудь сталкивался с этим сценарием раньше. Какое решение или обходное решение? Я googled, и первые несколько ссылок показывают, что это ошибка Eclipse. Пожалуйста, предложите, что можно сделать, чтобы вернуть проект в исполняемое состояние?

4b9b3361

Ответ 1

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

Ответ 2

Я видел ту же проблему. Я удалил этот файл jar, а затем rightclick в проекте, выберите maven и сделаю "update project...". Банку снова загрузили, и проблема исчезла.

Ответ 3

Есть другой случай для отображения ошибки Архив для требуемой библиотеки

Щелкните правой кнопкой мыши проект и откройте → свойства проекта проекта → путь сборки java → личные личные папки для Android

если есть два файла jar с таким же именем, а затем удалить один из libs.

Файл jar может скрываться несколько раз тогда откройте папку libs в окне и проверьте, существуют ли какие-либо скрытые файлы Организовать → папки и параметры поиска → просмотр → проверить скрытые файлы и Удалить скрытый файл jar. Тот же cass удалить, если скрытые java fies существуют в src и пакетах, если есть

Ответ 4

Похоже, у всех есть разные истории, чтобы рассказать! Для меня мне пришлось удалить ошибку с вкладки Markers Marks, а затем снова очистить проект. До этого я закрыл и повторно открыл проект/затмение несколько раз, как предложил @rachit, который не работал у меня.

Ответ 5

В моем случае я загрузил проект из Интернета, после распаковки проекта некоторые файлы были заблокированы, просто разблокировали файлы и повторили попытку, затем проблема была решена.

Ответ 6

В моем случае я попробовал все советы, но ошибка осталась. Я решил изменить версию с более поздним и написал это в pom.xml. После этого все в порядке.

Ответ 7

В моем случае перезагрузка Eclipse не решила проблему. Я перезапустил компьютер и сделал Project -> Clean в eclipse

Ответ 8

Возможно также из-за поврежденных файлов jar. Лучше сначала проверить это, так как это было в моем случае:

 jar tf myjar.jar

должен отображать содержимое внутри.

Ответ 9

i столкнулась с такой же проблемой на Eclipse Mars. Я загрузил банки из [https://oss.jfrog.org/webapp/#/artifacts/browse/tree/General/repo/org/ethereum/ethereumj-core/1.0.0-SNAPSHOT][1] и заменил его в каталоге.

У меня возникла ошибка при добавлении ethereum.jar с использованием pom.xml в C:\Users {machineName}.m2\repository\org\ethereum\ethereumj-core\1.0.0-SNAPSHOT\ethereum-core-1.0.0- SNAPSHOT.jar, я добавил загруженный jar (ethereum-core-1.0.0-SNAPSHOT.jar) здесь, и проблема была решена.

Ответ 10

Я не нашел дубликатов в любом месте и попытался перезапустить eclipse, перестроить проект. Я получал ошибку только для одной библиотеки. Поэтому я просто попытался переименовать файл jar с ksoap2-android-assembly-2.5.8-jar-with-dependencies.jar на ksoap2-2.5.8.jar

Итак, если ни одна из проблем не решена сверху, вы также можете попробовать этот

Ответ 11

Решение, которое работало для меня: перейдите к *.classpath и удалите строку: <classpathentry kind="lib" path="the_problematic_class.java"/>

Ответ 12

В моем случае установка java была неправильной. Итак, я удалил Java и переустановил новую версию. Теперь он работает.

Ответ 13

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

assoc .jar=CompressedFolder (см. https://superuser.com/questions/121540/can-you-configure-windows-to-open-jar-files-like-zip-files-without-a-3rd-party-t)

Дополнительно: простой тест

Перед тем как попробовать обходной путь, вот тест, чтобы увидеть, действительно ли это размер файла jar, который вас отключает.

  • Создайте большой .jar, полный случайных файлов .class, которые не находятся в вашей проблемной банке. Вы можете сделать это, создав папку с файлами, закрепив ее и переименовав расширение .zip в .jar. Windows может предупредить вас об изменении расширения. Игнорируйте это. Удостоверьтесь, что у вас достаточно файлов в папке, чтобы она была немного больше, чем проблемная банка.
  • Попробуйте импортировать эту искусственно созданную банку. Если это ошибка с той же ошибкой, то размер, вероятно, проблема.

Обходное решение

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

  • Декомпрессируйте файл .jar. Вы должны сделать это легко в Windows
  • Разделите папку, которую вы получаете с шага 1, на более мелкие подпапки. Это может быть всего две папки или более, в зависимости от того, насколько велика оригинал. Вы хотите, чтобы папки были меньше, чем некоторые из ваших существующих "хороших" банок, поэтому размер не будет проблемой. Убедитесь, что структура пакета не повреждена, когда вы это делаете.
  • Замените все папки, созданные на шаге 2, и переименуйте .zip в .jar.
  • Импортировать все .jars с шага 3 индивидуально.

Шаги могут быть немного неясными, так что вот пример. Представьте, что ваш файл jar был вызван mylib.jar. Вы разархивируете это в папку под названием mylib. Внутри, скажем, есть три подпапки, называемые package1, package2 и package3. Создайте 3 папки, называемые mylib1, mylib2 и mylib3, и поместите в package1, package2 и package3 соответственно. Затем закрепите их и переименуйте расширение в .jar. Затем вы будете импортировать mylib1.jar, mylib2.jar и mylib3.jar.

Ответ 14

Для веб-приложения Java web.xml добавлен как jar в проект. В проводнике проектов попробуйте найти web.xml как значок jar и удалить из проекта. Ошибка исчезнет!