Попытка включить встроенную библиотеку Maven в Eclipse, что приводит к отсутствующей ошибке артефакта - PullRequest
1 голос
/ 17 февраля 2012

Я видел, что есть довольно много вопросов относительно этой проблемы, но, к сожалению, никто не решил ее для меня. Вот скриншот того, что происходит:

pom.xml dependency error

Это зависит от файла jar android-support-v4, который, как вы видите, добавлен в мой путь сборки. Это точный файл jar из папки libs директории библиотеки maven. Я пробовал следующее:

  • Перезапуск Eclipse
  • Очистка проекта
  • Щелкните правой кнопкой мыши проект и обновите зависимости
  • Обновление конфигурации проекта Отключение и повторное включение разрешения рабочего пространства

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

Большое спасибо!

Ответы [ 2 ]

1 голос
/ 17 февраля 2012

Фактическая основная причина:

OP JMRboosties сообщает в этом случае о необходимости деактивировать Proguard (инструмент, который сжимает, оптимизирует,и запутывает ваш код, удаляя неиспользуемый код и переименовывая классы, поля и методы с семантически неясными именами)

отключение proguard на строке, где произошла ошибка (элемент <plugin>) в pom.xmlрешил проблему

(см. « Как использовать ProGuard с android-maven-plugin »).

Некоторые побочные эффекты могут возникнуть в результате использования Proguard:Например, на странице Proguard упоминается:

Файл по умолчанию proguard.cfg пытается охватить общие случаи, но вы можете столкнуться с такими исключениями, как ClassNotFoundException, что происходит, когдаProGuard удаляет весь класс, который вызывает ваше приложение.


Оригинальный ответ:

Как упоминалось в этом сообщении GitHub :

Я собираюсь развернуть свои собственные артефакты Android в моем личном хранилище, чтобы избежать повторения этой проблемы.
Если выбез явного использования Maven вы можете просто импортировать его как обычный проект Android в eclipse, и он выберет .jar из каталога libs/.

(Обратите внимание, что android-support-v4.jar isn 'т в libs в вашем проекте)

Вы должныустановите Android 1.6 и compat lib, используя maven SDK для развертывания, сейчас .

cd до platforms/platform-4/ и extras/compatibility-v4/ в deployer и запускайте mvn install в каждом.

Надеемся, что библиотека compat скоро превратит ее в maven central, поэтому я могу избежать этого шага.

Опять же, проект настроен для использования в качестве обычного проекта Android в Eclipse, слишком отделенном от maven.
File, New, Project, Android, используйте existing sources, выберите library/ папку.

0 голосов
/ 05 марта 2012

Предполагая, что вы используете m2e-android за кулисами, причина проблем с компиляцией заключается в том, что плагин m2e-android удаляет все provided зависимости области видимости из пути к классам проекта Eclipse.

Мы делаем это потому, что из-за изменений в ADT 16.0.0 любой JAR-файл в пути к классам Eclipse будет упакован в распространяемый APK-файл.

...