Intellij: android-support-v4.jar в составе actionBarSherlock и Project = IllegalArgumentException

17

В настоящее время я переношу все мои проекты из Eclipse в IntelliJ Idea.

Когда я использовал Eclipse, пакет был включен только в библиотеку ActionBarSherlock, а когда библиотека была включена в мой проект, все было добавлено автоматически.

С IntelliJ, как только андроид-support-v4.jar добавлен в ABS, этого не кажется достаточно, поскольку все мои импортные файлы повреждены.

Скриншот импорта ActionBarSherlock (LibABS):

Все кажется прекрасным, все SherlockActivity прекрасны, но все, что связано с поддержкой, не признано в моем приложении:

java: /home/user/workspace/....
cannot access android.support.v4.app.FragmentActivity
class file for android.support.v4.app.FragmentActivity not found

Итак, мне нужно скопировать вручную банку в папку libs и снова включить ее в мой проект.

Снимок экрана моего импорта проекта:

Импорт признан, гайка Теперь я получаю эту ошибку:

Android Dex: [BeTrains-for-Android] UNEXPECTED TOP-LEVEL EXCEPTION:
Android Dex: [BeTrains-for-Android] java.lang.IllegalArgumentException: already added: Landroid/support/v4/app/ShareCompat$ShareCompatImplJB;

Большое спасибо за любую помощь.

    
задан Waza_Be 31.12.2012 в 09:25
источник
  • Попробуйте удалить сейчас android-support-v4.jar из зависимостей. Он уже включен через зависимости LibABS. –  Nikita Beloglazov 31.12.2012 в 09:33
  • Как объяснялось, я получаю: java: / home / user / workspace / .... не может получить доступ к файлу класса android.support.v4.app.FragmentActivity для android.support.v4.app.FragmentActivity не найден –  Waza_Be 31.12.2012 в 09:33
  • в первом случае у вас нет зависимостей LibABS, как во втором случае. –  Nikita Beloglazov 31.12.2012 в 09:34
  • Первый случай на скриншоте зависимостей LibABS, второй случай - скриншот моих зависимостей приложений –  Waza_Be 31.12.2012 в 09:36
  • Попробуйте изменить зависимость android-support-v4.jar к охвату, представленному в вашем проекте. –  Nikita Beloglazov 31.12.2012 в 09:39
Показать остальные комментарии

1 ответ

15

Попробуйте играть с областями зависимостей и экспортировать флаги. Проверьте эту страницу для описания: вкладка зависимостей .     

ответ дан Nikita Beloglazov 31.12.2012 в 10:19
  • Waouw, все исправлено. Проблема заключалась в том, что я использовал SlidingMenu, поэтому трюк состоял в том, чтобы включить только Slidingmenu в мой главный проект, Slidingmenu включил ABS, который нужно было экспортировать, и ABS, в который была включена банка поддержки, которая также должна была быть экспортирована. –  Waza_Be 31.12.2012 в 10:46
  • В качестве FYI это сводится к необходимости устанавливать Export в любом проекте, на который делается ссылка, например ActionBarSherlock, в котором вы хотите использовать ссылки на проекты, в данном случае android-support-v4.jar. –  Aaron McIver 06.01.2013 в 06:45
  • У меня была такая же проблема при использовании Facebook и ActionBarSherlock в качестве модулей. Я решил это, установив Scope в оба модуля. –  mparaz 13.02.2013 в 13:56
  • @mparaz Я не получаю android.support.v4 в обоих вариантах модуля ... любая идея почему? –  CoDe 25.08.2013 в 12:22