Android-support-v4.jar не импортирует правильно в Eclipse - программирование
Подтвердить что ты не робот

Android-support-v4.jar не импортирует правильно в Eclipse

Я пытаюсь получить приложение для компиляции, которое использует классы android-support-v4.jar и Fragmentation, которые он содержит, но я продолжаю получать сообщения всякий раз, когда пытаюсь скомпилировать ошибки в коде. Все ошибки связаны с разными классами Fragmentation, которые находятся в .JAR. Я попробовал ctrl-clicking папку проекта, а затем выбрав Android Tools -> Add Compatibility Library, и я продолжаю получать эту ошибку:

[2011-12-20 11:55:31 - Android Compatibility JAR not found:]
/Applications/eclipse/Eclipse.app/Contents/MacOS/v4/android-support-v4.jar

Почему он должен искать .JAR в Eclipse Package Contents? Я перешел к свойствам проекта и перешел на путь сборки Java и импортировал .JAR из папки MainActivity/libs, который не работал, а затем я попытался импортировать его из каталога SDK, и это не было Не работай. Я исправил свойства проекта, очистил и построил его бесчисленное количество раз, я перезапустил Eclipse, компьютер, повторно загрузил и установил Eclipse, Android SDK и ADT и все равно ничего. Я полностью в тупике.


Изменить


Я прошел путь сборки и импортировал .JAR из каталога MainActivity/libs и моего SDK. К черту это я добавил .JAR в каталог, который продолжает появляться в ошибках, и это не сработало. Что заставляет Eclipse искать его в нем? Содержимое приложения?


Update


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

Подобно nyah:

enter image description here


Версия


Итак, я думаю, что вопрос может быть "Почему Eclipse ищет .JAR в содержимом пакета приложения Eclipse вместо каталога libs проекта или каталога Android SDK, который я использовал для импорта в качестве внешнего. JAR?"


Обновление # 2


Теперь я получаю только одну ошибку после tinkering, это по этому методу:

@Override
public MenuItem setOnActionExpandListener(OnActionExpandListener onActionExpandListener) {
    // Noop
    return this;
}

Quick Fix говорит, что я должен удалить аннотацию @Override, но этот метод должен переопределить метод суперкласса.

Это ошибки, которые он показывает:

Multiple markers at this line
- The method setOnActionExpandListener(MenuItem.OnActionExpandListener) of type SimpleMenuItem must override a superclass method
- implements android.view.MenuItem.setOnActionExpandListener
4b9b3361

Ответ 1

Оказывается, мой сертификат отладки истек, поэтому мне просто нужно было удалить ~/.android/debug.keystore и перезапустить Eclipse, и все сработало.

Ответ 2

Похоже, он ищет банку здесь:/Applications/eclipse/Eclipse.app/Contents/MacOS/v4/android-support-v4.jar

android-support-v4.jar находится в <sdk> /extras/android/compatible/v4

Пожалуйста, убедитесь, что вы добавили это как внешнюю банку в путь сборки java.

Ответ 3

Я мог бы решить эту проблему 1- удалить "android-support-v4.jar" из lib 2- щелкните правой кнопкой мыши по названию проекта, выберите "Инструменты Android" и "Добавить библиотеку поддержки"

Ответ 4

Если это еще не решено: Как уже говорилось, в Eclipse перейдите в "Свойства проекта" > "Путь сборки Java" > "Libs" > "Добавить внешний" и получите его из каталога adk.

Также настройте Java 1.6 как свою компиляцию по умолчанию, если у вас ее уже нет. Это должно решить описанные выше Ошибки переопределения.

Ответ 5

Я понимаю, что на этот вопрос был дан ответ, но это известная проблема, которая должна быть исправлена ​​в выпуске плагина ADT-17 в соответствии с комментарием 9 здесь: http://code.google.com/p/android/issues/detail?id=21488

Кроме того, люди, у которых есть эта проблема, могут скопировать JAR совместимости в место, где говорится, что он не может его найти. Очевидно, что он выглядит не в том месте (поскольку он проверяет каталог Eclipse, а не каталог android-sdk), поэтому простое исправление на данный момент просто заключается в том, чтобы поместить пакет туда, где он хочет его найти, даже если он не принадлежат.

Для меня это было так же просто, как скопировать каталог v4 в C:/android-sdk/extras/android/support/в каталог C:/eclipse/.

Ответ 6

У меня была та же проблема, что и в Ubuntu. Перейдите в Инструменты- > Параметры. Проверить Force https://... на http:// Откройте Android SDK Manager. Проверьте Extras- > Android Support Library.

Ответ 7

Что-то подобное случилось со мной. В верхней части MainActivity.java у меня были следующие импортные ошибки:

import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;

В каждой из строк слева у них была лампочка с некоторыми предложениями. Если вы нажмете на него, одним из вариантов будет "Исправить настройку проекта". Затем вы сможете выбирать между несколькими вариантами для фиксации импорта, вы должны выбрать тот, который указывает поддержку android-support-v4.jar.

Ответ 8

Щелкните правой кнопкой мыши на проекте ur → выберите инструменты для Android → выберите добавить библиотеку поддержки и просто установите поддерживающие библиотеки.

Ответ 9

Не пытаетесь ли вы использовать Инструменты Android → Добавить библиотеку совместимости и добавить только jar в библиотеку путей сборки Java.

Я использую эту библиотеку jar таким образом, и она работает без каких-либо проблем.

Ответ 10

Еще одна оговорка заключалась в запуске Android SDK Manager в Windows 7 без прав администратора. Он попытается установить пакет поддержки, но всегда будет терпеть неудачу, и фактический пакет никогда не был загружен в

C:\Program Files (x86)\Android\android-sdk\extras\android\support\v4\android-support-v4.jar

Ответ 11

У меня была та же проблема.

В свойствах проекта: Java Build Path: вкладка "Заказ и экспорт", поле рядом с андроид-поддержкой-v4.jar не было проверено. Я проверил коробку, и ошибка исчезла.

Ответ 12

Решение. Убедитесь, что вы вводите тот же API для "Target SDK" и "Compile with" во время создания проекта Android (или в файле Manifest после создания).