Jar Mismatch Нашел 2 версии android-support-v4.jar в списке зависимостей
Я пытаюсь создать 2 версии приложения для Android (бесплатно/платно). У меня есть Android-библиотека, которая содержит файлы, общие для обоих. Я создал новый Android-проект и пытаюсь использовать библиотеку, но получаю следующую ошибку:
Found 2 versions of android-support-v4.jar in the dependency list,
but not all the versions are identical (check is based on SHA-1 only at this time).
All versions of the libraries must be the same at this time.
Versions found are:
Path: /Users/Zaheer/Developer/App Free/libs/android-support-v4.jar
Length: 349252
SHA-1: 612846c9857077a039b533718f72db3bc041d389
Path: /Users/Zaheer/Developer/App Library/libs/android-support-v4.jar
Length: 337562
SHA-1: 27c24d26e4c5d57976e6926367985548678e913c
Любые идеи о том, как разрешить это? Я играю со способом построения без успеха.
Ответы
Ответ 1
Любые идеи о том, как разрешить это?
Удалить.
Я играл со строкой сборки без успеха.
Шаг №1: Отменить все это. Если вы входите в путь сборки, на R16 или более поздней версии плагина ADT для Eclipse, вы делаете это неправильно.
Шаг № 2: выберите одну из этих двух версий JAR или выберите один из области "Дополнительные параметры" вашей установки SDK.
Шаг # 3: Поместите правый JAR в App Library
.
Шаг №4: Удалите один из App Free
, так как он подберет этот JAR из App Library
.
Вместо этого вы можете использовать один и тот же фактический JAR файл в обоих местах (App Free
и App Library
), хотя это просто занимает дополнительное пространство без каких-либо причин.
Ответ 2
- Удалить android-support-v4.jar из App Free.
- Добавьте тот же файл из библиотеки приложений в приложение бесплатно
Ответ 3
Выше решения в основном решают проблему. после использования этих решений и проблемы сохраняется. Тогда
Перейдите в папку проекта → libs- > и удалите "android-support-v4.jar"
Надеясь, что это решит вашу проблему, поскольку она решит мою проблему.
Ответ 4
Есть несколько сценариев, в которых у вас есть несколько проектов библиотек, имеющих android-support-v4.jar
в своих libs
и строках сборки, и ваш проект имеет зависимость от обоих из них. Скажем, например, в моем случае у меня есть следующие проекты библиотеки в моей рабочей области,
- libfacebook
- libsherlockactionbar
Оба эти проекта независимы, а мой project.properties
выглядит следующим образом:
# Project target.
target=android-17
android.library.reference.1=../libfacebook
android.library.reference.2=../libsherlockactionbar
Когда я создаю свой проект, у меня возникает проблема несоответствия jar, в которой дублируются ссылки на две копии одного и того же файла. То, что я сделал для решения этой проблемы, - это немного обман. Я создал новый проект библиотеки с именем libcommons
как родительский для всех других проектов библиотеки в моей рабочей области, включая libfacebook
и libsherlockactionbar
. Затем я удалил библиотеку поддержки из всех других проектов и сохранил только одну копию внутри папки libcommons
libs. Затем я добавил libcommons
в качестве ссылки на все мои другие проекты библиотеки. После очистки моего рабочего пространства все работает как шарм.
Ответ 5
Это более элегантное решение, чем удаление и добавление файлов!
Вам просто нужно:
- Щелкните правой кнопкой мыши проект App Free.
- Перейдите в "Инструменты Android" > "Добавить библиотеку поддержки"
- Утвердить разрешения и обновить библиотеку
- Повторите этот процесс для библиотеки приложений проекта
Библиотека поддержки Android будет синхронизироваться (:
Ответ 6
ОЧЕНЬ ПРОСТОЕ РЕШЕНИЕ
Для моего случая было очень простое решение, просто скопировать тот же (android-support-v4.jar) jar файл во все проекты. Больше конфликтов не будет.
1 Скопируйте файл jar android-support-v4.jar из папки libs любого проекта.
2 Удалите файл jar android-support-v4.jar из уже существующей папки с уже существующими файлами.
3 Вставьте вновь скопированный файл jar файла первого проекта в папку libs второго проекта.
Проблема несоответствия jar будет решена к настоящему времени.
Ответ 7
Просто скопируйте библиотеку из одного из проектов в другой. Возможно, временная метка должна быть одинаковой для обоих.
Ответ 8
Разрешение:
- Щелкните правой кнопкой мыши на "бесплатный" проект > Инструменты Android > Добавить библиотеку поддержки.
- Сделайте то же самое в проекте "заплатил".
- Очистить все проекты
Ответ 9
Проверьте, открыты ли для вас нерелевантные проекты, потому что это было для меня, казалось, что один из файлов JAR был связан с другим проектом, с которым я не работал, поэтому я просто закрыл этот проект, сделал чистую сборку проекта, над которым я работаю, и больше не имел проблемы! Надеюсь, это поможет кому-то!
Ответ 10
Используйте ту же самую банку, добавляя внешние банки как в библиотеке, так и в проекте
Ответ 11
хорошо.. он работает для меня:
Перейдите к
Папка проектa > libs
затем удалите "android-support-v4.jar"
Тогда
project > Очистить
Это сработает!
Ответ 12
У меня была эта проблема, но вместо удаления конфликтующей android-support-v4.jar я просто переименовал ее в android-support-v4_PROJECT.jar, что удалил конфликт.
Если вам интересно, как переименовать файл в Eclipse, вам просто нужно выделить файл и нажать F2.
Ответ 13
Вам просто нужно иметь точно такую же контрольную сумму android-support-v4.jar для каждого из ваших проектов.
Для этого вы можете скопировать/пройти один из них во всех конфликтующих проектах/библиотеке.
Больше ничего не делать, чистить и наслаждаться:)
Ответ 14
Возможно, вы откроете 2 проекта одновременно (оба с поддержкой android-support-v4.jar). I close 1 project and every thing ok