2012-04-04 3 views
8

Android 용 GPS 앱을 만들고 있습니다! 그리고 지금 나는 문제를 발견했습니다. 응용 프로그램이 전혀 시작되지 않습니다 ...이 문제를 해결하는 방법에 대한 아이디어? 최근 ADT 17으로 업데이트 한 이상, 그들은 lib 라이브러리 처리를 변경 한 경우Android 앱이 noClassDefFoundError를 시작하지 않습니다.

04-05 12:54:50.877: D/dalvikvm(540): Not late-enabling CheckJNI (already on) 
04-05 12:54:51.018: I/dalvikvm(540): Turning on JNI app bug workarounds for target SDK version 5... 
04-05 12:54:51.417: I/dalvikvm(540): Could not find method org.acra.ACRA.init, referenced from method com.kulplex.gaia.GaiaApp.onCreate 
04-05 12:54:51.417: W/dalvikvm(540): VFY: unable to resolve static method 652: Lorg/acra/ACRA;.init (Landroid/app/Application;)V 
04-05 12:54:51.417: D/dalvikvm(540): VFY: replacing opcode 0x71 at 0x0000 
04-05 12:54:51.457: D/AndroidRuntime(540): Shutting down VM 
04-05 12:54:51.457: W/dalvikvm(540): threadid=1: thread exiting with uncaught exception (group=0x409c01f8) 
04-05 12:54:51.477: E/AndroidRuntime(540): FATAL EXCEPTION: main 
04-05 12:54:51.477: E/AndroidRuntime(540): java.lang.NoClassDefFoundError: org.acra.ACRA 
04-05 12:54:51.477: E/AndroidRuntime(540): at com.kulplex.gaia.GaiaApp.onCreate(GaiaApp.java:54) 
04-05 12:54:51.477: E/AndroidRuntime(540): at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:969) 
04-05 12:54:51.477: E/AndroidRuntime(540): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:3954) 
04-05 12:54:51.477: E/AndroidRuntime(540): at android.app.ActivityThread.access$1300(ActivityThread.java:123) 
04-05 12:54:51.477: E/AndroidRuntime(540): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1185) 
04-05 12:54:51.477: E/AndroidRuntime(540): at android.os.Handler.dispatchMessage(Handler.java:99) 
04-05 12:54:51.477: E/AndroidRuntime(540): at android.os.Looper.loop(Looper.java:137) 
04-05 12:54:51.477: E/AndroidRuntime(540): at android.app.ActivityThread.main(ActivityThread.java:4424) 
04-05 12:54:51.477: E/AndroidRuntime(540): at java.lang.reflect.Method.invokeNative(Native Method) 
04-05 12:54:51.477: E/AndroidRuntime(540): at java.lang.reflect.Method.invoke(Method.java:511) 
04-05 12:54:51.477: E/AndroidRuntime(540): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 
04-05 12:54:51.477: E/AndroidRuntime(540): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 
04-05 12:54:51.477: E/AndroidRuntime(540): at dalvik.system.NativeStart.main(Native Method) 
+1

코드를 게시해야합니다. – Blackbelt

+0

문제를 좁히기 위해 코드를 게시해야합니다. – dymmeh

+0

코드를 게시해야하지만 오류에서 볼 수있는 것에 대해서는 mapview와 스레드를 사용하고 있으며 스레드와 mapviews에 관한 문제는 mapviews가 메인에서 처리되어야한다고 생각하기 때문에 실. – Raykud

답변

18

. 프로젝트> 특성> Java 빌드 경로> 라이브러리>> 그들에 오류 표시와 모든 항아리를 선택하고 remove을 클릭 add JARs이>에서 모든 병을 선택 클릭

은 그래서 당신은 마우스 오른쪽 단추로 클릭 lib 디렉토리에 libs, 이름을 바꿀 필요 새 libs dir.

희망이 도움이됩니다.

+0

위대한, 감사합니다 –

21

최신 Android 도구로 업데이트 한 후 동일한 문제가있었습니다.

프로젝트 속성, Java 빌드 경로, 주문 및 내보내기 섹션에서 Android 개인 라이브러리가 선택되었는지 확인해야했습니다.

그런 다음 프로젝트를 정리해야했습니다. 그 후에 그것은 작동하는 것처럼 보입니다.

실제로는 Java 빌드 경로의 '주문 및 내보내기'에 문제가있었습니다.

업그레이드 할 때 새로운 'Android 개인 라이브러리'의 '주문 및 내보내기'가 항상 선택되지는 않습니다. android-support-v4.jar은 이제이 'Android 개인 라이브러리'섹션에 있습니다.

이 문제를 해결하려면 '주문 및 내보내기'로 이동하여 'Android 개인 라이브러리'를 선택하십시오. 그런 다음 새로 고침/정리/다시 작성하십시오.

라이브러리 프로젝트에 대해이 '수정'을 수행 한 후에는 '수정'을 즉시 볼 수 없기 때문에 의존 프로젝트를 닫고 다시 열면됩니다.

대답은 here입니다.

+0

매력처럼 작동! –

+1

이것은 * ACRA 4.5 * 및 최신 안드로이드 SDK 도구 22, 도구 작성 17로 나를 속이고있었습니다. 도움을 주셔서 대단히 감사합니다. – Imanol

+0

SDK Tools 22와 Build Tools 17로 업데이트 한 후,'Order and Export' 탭에서'Android Private Libraries'의 체크 박스를 체크해야했습니다. – mrcktz

관련 문제