2012-04-04 2 views
8

Sto creando un'app gps per l'androide! E ora mi sono imbattuto in un problema. L'app non parte affatto ... Qualche idea su come risolvere questo problema?L'app per Android non verrà avviata 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

dovresti pubblicare il tuo codice. – Blackbelt

+0

è necessario inserire il codice per noi per restringere quale potrebbe essere il problema. – dymmeh

+0

dovresti pubblicare il tuo codice ma per quello che ho potuto vedere nei tuoi errori, stai usando una mappa e thread, e per quanto ne so ci sono problemi relativi a thread e mapview poiché "sembra" che le mapview debbano essere gestite nel filo. – Raykud

risposta

18

Se hai recentemente aggiornato per ADT 17 e, soprattutto, hanno cambiato la gestione della libreria lib.

quindi è necessario rinominare la lib dir per libs, quindi fare clic destro del progetto> proprietà> Java percorso di generazione> Biblioteche> selezionare tutti i vasi con le marcature di errore su di loro e fare clic su remove> cliccare add JARs> Seleziona tutto vasetti da la tua nuova dir. libs

Spero che questo aiuti.

+0

ottimo, grazie –

21

Ho avuto questo stesso problema dopo l'aggiornamento agli ultimi strumenti Android.

Nelle proprietà del progetto, sezione Percorso di build Java, ordine ed esportazione, ho dovuto verificare che le librerie private di Android siano state controllate.

Quindi ho dovuto pulire il progetto. Dopo ciò sembra funzionare.

In effetti era un problema con "Ordine ed esportazione" di Java Build Path.

Durante l'aggiornamento, l'ordine e l'esportazione delle nuove "Librerie private Android" non viene sempre controllato. E Android-support-v4.jar è ora in questa sezione 'Librerie private Android'.

Per risolvere questo problema, andare su "Ordina ed esporta" e selezionare "Librerie private Android". Quindi aggiornare/pulire/ricostruire.

Dopo aver eseguito questa 'correzione' per un progetto di libreria, potrebbe essere necessario chiudere e riaprire qualsiasi progetto dipendente, poiché potrebbero non vedere immediatamente questa 'correzione'.

Ho trovato la risposta here.

+0

Lavora come un incantesimo! –

+1

Mi stava prendendo in giro con * ACRA 4.5 * e i più recenti strumenti per android sdk 22, strumenti per la compilazione 17. Grazie mille per il vostro aiuto. – Imanol

+0

Lo stesso qui, dopo l'aggiornamento a SDK Tools 22 e Build Tools 17 ho dovuto spuntare la casella di controllo per 'Librerie private Android' nella scheda' Ordine ed esportazione'. – mrcktz