wie ExceptionInInitializationError zu debuggen?
Frage
Ich erhalte eine Ausnahme in einer sehr einfachen ‚Studie‘ Anwendung, so dass ich das Problem zu sein in meinem Projekt-Setup erwarten, aber ich weiß nicht, wie zu debuggen ...
Was ist der Kontext der Ausnahme, "ExceptionInInitializationError"?
Wo ist es dokumentiert? A: Suchen Android Developers Guide
Stack-Trace aus Eclipse Debugger mit: select thread -> Rechtsklick -> Kopieren Stapel
Thread [<3> main] (Suspended (exception ExceptionInInitializerError))
Class.newInstance() line: 1479
Instrumentation.newActivity(ClassLoader, String, Intent) line: 1021
ActivityThread.performLaunchActivity(ActivityThread$ActivityRecord, Intent) line: 2367
ActivityThread.handleLaunchActivity(ActivityThread$ActivityRecord, Intent) line: 2470
ActivityThread.access$2200(ActivityThread, ActivityThread$ActivityRecord, Intent) line: 119
ActivityThread$H.handleMessage(Message) line: 1821
ActivityThread$H(Handler).dispatchMessage(Message) line: 99
Looper.loop() line: 123
ActivityThread.main(String[]) line: 4310
Method.invokeNative(Object, Object[], Class, Class[], Class, int, boolean) line: not available [native method]
Method.invoke(Object, Object...) line: 521
ZygoteInit$MethodAndArgsCaller.run() line: 860
ZygoteInit.main(String[]) line: 618
NativeStart.main(String[]) line: not available [native method]
Hier ist die logcat:
I/ActivityManager( 52): Starting activity: Intent { flg=0x10000000 cmp=com.androidcode.study_wikinotes/.WikiNotes }
D/AndroidRuntime( 198): Shutting down VM
D/dalvikvm( 198): DestroyJavaVM waiting for non-daemon threads to exit
D/dalvikvm( 198): DestroyJavaVM shutting VM down
D/dalvikvm( 198): HeapWorker thread shutting down
D/dalvikvm( 198): HeapWorker thread has shut down
D/jdwp ( 198): JDWP shutting down net...
I/jdwp ( 198): adbd disconnected
D/dalvikvm( 198): VM cleaning up
E/AndroidRuntime( 198): ERROR: thread attach failed
I/ActivityManager( 52): Start proc com.androidcode.study_wikinotes for activity com.androidcode.study_wikinotes/.WikiNotes: pid=219 uid=10023 gids={}
D/dalvikvm( 198): LinearAlloc 0x0 used 634508 of 5242880 (12%)
D/ddm-heap( 155): Got feature list request
D/ddm-heap( 169): Got feature list request
D/ddm-heap( 183): Got feature list request
D/ddm-heap( 206): Got feature list request
D/ddm-heap( 219): Got feature list request
W/ActivityThread( 219): Application com.androidcode.study_wikinotes is waiting for the debugger on port 8100...
I/System.out( 219): Sending WAIT chunk
I/dalvikvm( 219): Debugger is active
I/System.out( 219): Debugger has connected
I/System.out( 219): waiting for debugger to settle...
I/System.out( 219): waiting for debugger to settle...
I/System.out( 219): waiting for debugger to settle...
I/System.out( 219): waiting for debugger to settle...
I/System.out( 219): waiting for debugger to settle...
I/System.out( 219): waiting for debugger to settle...
I/System.out( 219): waiting for debugger to settle...
I/System.out( 219): waiting for debugger to settle...
I/System.out( 219): waiting for debugger to settle...
I/System.out( 219): waiting for debugger to settle...
I/System.out( 219): waiting for debugger to settle...
I/System.out( 219): debugger has settled (1382)
W/dalvikvm( 219): Exception Ljava/util/regex/PatternSyntaxException; thrown during Lcom/androidcode/study_wikinotes/WikiNotes;.<clinit>
W/dalvikvm( 219): Class init failed in newInstance call (Lcom/androidcode/study_wikinotes/WikiNotes;)
Ahh ... Ich habe eine unvollständige Klasse in WikiNotes. Würden Sie sagen, die Antwort auf „Start mit logcat“? :) Danke für die Hilfe. Gehen Sie voran und fügen Sie Ihre Antwort und ich werde es akzeptieren.
Lösung
Ja, das erste, was zu tun ist, wenn in Android Debuggen, indem Sie in LogCat zu starten ist.