NoClassDefFoundError - Eclipse и Android - PullRequest
       40

NoClassDefFoundError - Eclipse и Android

194 голосов
/ 12 февраля 2010

У меня возникла проблема при попытке запустить приложение для Android, которое до добавления второй внешней библиотеки в путь сборки работало нормально. С тех пор как я добавил jar Scoreninja, теперь я получаю NoClassDefFoundError при попытке запустить приложение.

Вот сообщение:

02-11 21:45:26.154: ERROR/AndroidRuntime(3654): java.lang.NoClassDefFoundError: com.scoreninja.adapter.ScoreNinjaAdapter

Поскольку все сценарии сборки генерируются инструментами Android (?), Я не уверен, что еще я могу сделать, кроме очистки и восстановления или перезапуска затмения (я уже попробовал все три). Кто-нибудь знает, как я могу это исправить?

Ответы [ 27 ]

0 голосов
/ 18 июня 2013

Если вы измените свой заказ и экспортируете в путь сборки проекта, эта ошибка не возникнет. Другой способ добиться этого - через .classpath в папке вашего проекта.

0 голосов
/ 15 октября 2013

Попробуйте это: -

Шаг 1

Добавить все библиотеки для сборки pat в Eclipse (значит сделать все библиотеки ссылками на библиотеки)

Шаг 2

Удалите файл R.java и снова соберите проект. Не волнуйтесь, R.java автоматически воссоздается.

Холод:)

0 голосов
/ 18 января 2013

пожалуйста, убедитесь, что ваш jar-файл находится в каталоге libs вашего проекта, если вы используете более новую версию ADT с вашим затмением.

0 голосов
/ 23 мая 2013

У меня точно такая же проблема ... Чтобы исправить это, я просто удалил свои Android Private Libs в "пути сборки" и нажал "ОК" ... и когда я открыл оп "путь сборки", снова затмение добавило их опять сама, а то у меня сработало;) ...

0 голосов
/ 05 июня 2013

Решение здесь у меня сработало. Это вопрос импорта библиотеки в папку libs, изменения файла build.gradle и очистки с помощью gradlew.

0 голосов
/ 04 июня 2013

Если вы предпочитаете знать, с какими файлами связано обходное решение, вот что я нашел. Просто измените файл .classpath на

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="src" path="gen"/>
    <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
    <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
    <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>
    <classpathentry kind="output" path="bin/classes"/>
</classpath>

Заменить файл .classpath во всех проектах библиотеки и в основном проекте Android. Файл .classpath находится в корневой папке проекта eclipse. Конечно, не забудьте добавить свои собственные записи пути к классам, если они у вас есть (так что сравните с текущей версией .classpath).

Я полагаю, что это тот же результат, что и при просмотре меню eclipse, как было описано выше пользователем componentavt (Eclipse / Configure Build Path / Order and Export).

0 голосов
/ 03 июня 2013

Я потратил два дня, пытаясь решить эту проблему после обновления ADT.наконец, мне повезло получить этот пост здесь:

https://code.google.com/p/android/issues/detail?id=55304

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...