Проблема в файле jar achartengine - PullRequest
3 голосов
/ 27 марта 2012

На самом деле я создал приложение, в котором я использовал achartengine для построения графика. Он работал нормально , но сегодня я увидел обновление для android SDK to r17.

Как только я обновил sdk, приложение, которое я собрал, начало падать. В logcat я показываю следующее сообщение об ошибке. Почему это происходит, потому что файл jar, который я использовал, устарел.

03-27 14:44:26.320: E/AndroidRuntime(4360): java.lang.NoClassDefFoundError: [Lorg.achartengine.chart.PointStyle;
03-27 14:44:26.320: E/AndroidRuntime(4360):     at   in.com.example.ChartEngineActivity.onCreate(ChartEngineActivity.java:58)
03-27 14:44:26.320: E/AndroidRuntime(4360):     at  android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
03-27 14:44:26.320: E/AndroidRuntime(4360):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
03-27 14:44:26.320: E/AndroidRuntime(4360):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
03-27 14:44:26.320: E/AndroidRuntime(4360):     at android.app.ActivityThread.access$1500(ActivityThread.java:117)
03-27 14:44:26.320: E/AndroidRuntime(4360):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
03-27 14:44:26.320: E/AndroidRuntime(4360):     at android.os.Handler.dispatchMessage(Handler.java:99)
03-27 14:44:26.320: E/AndroidRuntime(4360):     at android.os.Looper.loop(Looper.java:130)
03-27 14:44:26.320: E/AndroidRuntime(4360):     at android.app.ActivityThread.main(ActivityThread.java:3683)
03-27 14:44:26.320: E/AndroidRuntime(4360):     at java.lang.reflect.Method.invokeNative(Native Method)
03-27 14:44:26.320: E/AndroidRuntime(4360):     at java.lang.reflect.Method.invoke(Method.java:507)
03-27 14:44:26.320: E/AndroidRuntime(4360):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
03-27 14:44:26.320: E/AndroidRuntime(4360):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
03-27 14:44:26.320: E/AndroidRuntime(4360):     at dalvik.system.NativeStart.main(Native Method)

Ответы [ 3 ]

4 голосов
/ 27 марта 2012

Вот ваше решение, просто следуйте инструкциям из Как исправить «NoClassDefFoundError» с помощью ADT 17 , и вы сможете заставить его работать.

2 голосов
/ 16 июля 2012

У меня только что была похожая проблема с ADT версии 20 в Eclipse.

Почему ошибка?

Источник и проект демо-проекта предназначены для использования с более ранней версией ADTплагин.

Начиная с ADT 19 или 20, ADT начал автоматически настраивать все файлы JAR, которые вы помещаете в папку libs / ( note libs /, а не lib / ) как "Android"Зависимости ", а не" Справочные библиотеки "(которые вы получаете, если щелкнуть правой кнопкой мыши файл JAR и" Добавить в путь сборки ... ".

Из-за этого изменения файл проекта, включенный вПример проекта AChartEngine устарел.

Чтобы использовать пример кода с ADT 20, выполните следующие действия:

  1. Загрузите и разархивируйте файл achartengine-1.0.0-demo-source.zipс веб-сайта AChartEngine (который резервируется после катастрофического сбоя сервера, так что слава им)
  2. Удалите .project и .classpath из achartengine-1.0.0-demo
  3. В Eclipse перейдите в меню «Файл»> «Новый ...> Проект ...> Проект Android из существующего кода»
  4. Выберите «Обзор ...» и перейдите в каталог, в который вы распаковали демонстрационный код.
  5. Выберите «Копировать проект в worksp»ace "(не обязательно, но самый простой)
  6. Выберите Finish.

Теперь подключите устройство, загрузите эмулятор и запустите его!

Кроме того, если вы выберете зеленую кнопку «Выполнить» на панели инструментов, и она выдаст ошибку, похожую на «Не удалось найти предыдущую конфигурацию» (что-то подобное, хотя формулировка была более загадочной),

  1. Нажмите на проект в проводнике пакетов
  2. Нажмите на черную стрелку вниз рядом с кнопкой «Выполнить»
  3. Наведите курсор на «Запуск от имени» и выберите «Приложение Android»

Наслаждайтесь графиками!

0 голосов
/ 11 апреля 2012

В ADT версии 18: - Щелкните правой кнопкой мыши по проекту и перейдите к «Build Path» -> «Configure Build Path».На вкладке «Порядок и экспорт» просто выберите все, но отмените выбор только android.jar.Нажмите OK, и ваш проект готов к работе.

...