NoClassDefFoundError при добавлении SocialAuth в Eclipse

Я попытался добавить внешнюю библиотеку в свой Android-проект, но не повезло. Мое приложение разбилось с Exception во время выполнения:

09-06 07:44:41.921: E/AndroidRuntime(601): java.lang.NoClassDefFoundError: org.brickred.socialauth.android.SocialAuthAdapter 

Нашел много разных магических решений, но ничего не помогло:

  1. Создал каталог «libs» и добавил JAR там.
  2. Также добавлены JAR в «Свойства проекта → Путь сборки Java → Библиотеки»
  3. В «Свойства проекта → путь сборки Java → Заказ и экспорт» перенесены JAR вверх и проверили его.
  4. Пытался очистить проект и даже создать новый проект.
  5. Установлена ​​последняя версия Eclipse.

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

Есть идеи?

Используемое программное обеспечение:

  • Eclipse: Версия: Juno Release Build id: 20120614-1722
  • ADT: 20.0.3.v201208082019-427395

    У меня была та же проблема, и ни один из существующих ответов здесь не разрешил проблему.

    Затем я проверил примеры SocialAuth (которые работали) и заметил, что имя баннера отличается от моего – socialauth-android.jar вместо socialauth-android-1.0.jar

    Я использовал баннер socialauth-android.jar, и ошибка времени выполнения исчезла.

    Вам просто нужно определить новую активность в файле AndroidManifest.xml.

    Поместите код ниже в <application> ----</application> вашего файла манифеста.

     <uses-library android:name="org.brickred.socialauth.android.SocialAuthAdapter" /> 

    Иногда возникает ошибка, вызванная обновлением ADT. Попробуйте поместить это в теги <Application> в файле Manifiest.xml

     <uses-library android:name="org.brickred.socialauth...(your lib name)" /> 

    И посмотрите больше, если Ref Lib проверяется в ваших свойствах prj: Manage project libs

    Java.lang.NoClassDefFoundError – ошибка времени выполнения. Это означает, что НЕ важно, где и как вы размещаете свои баночки в своем проекте (недостающие банки здесь могут привести к ошибкам компиляции). Важно, чтобы ваши необходимые банки были включены в построенную банку. Попробуйте открыть скомпилированный / сгенерированный файл jar и проверить, содержит ли он необходимые банки и что они находятся в правильном месте.

    Вставьте файл jar в папку libs, перейдите в * -> properties-> java build path-> libraries-> нажмите Add jars -> * выберите папку приложений и выберите файл jar и нажмите ok и очистите свой проект.

    Вам просто нужно добавить банки, поставленные в sdk в вашем пути сборки. Вы пробовали другие примеры внутри sdk. Если вы все еще сталкиваетесь с проблемой, вы можете отправить письмо на поддержку socialauth android.

    После того, как у вас есть socialauth – *. Jar и socialauth-android.jar в папке libs, попробуйте щелкнуть правой кнопкой мыши по нему и выбрать «Путь сборки»> «Добавить в путь сборки». В моем случае проблема ушла, когда я получил « Связанные библиотеки » в своем проекте.