2014-01-10 41 views
1

推出我的玻璃的應用程序時,我收到以下錯誤的開始:SpeedService.java的對NoClassDefFoundError的服務

FATAL EXCEPTION: main 
java.lang.NoClassDefFoundError: com.example.glass.speeddisplay.SpeedDisplayMenuActivity 
at com.example.glass.speeddisplay.service.SpeedService.onStartCommand(SpeedService.java:135) 
at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:2359) 
at android.app.ActivityThread.access$1900(ActivityThread.java:123) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1210) 
at android.os.Handler.dispatchMessage(Handler.java:99) 
at android.os.Looper.loop(Looper.java:137) 
at android.app.ActivityThread.main(ActivityThread.java:4424) 
at java.lang.reflect.Method.invokeNative(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:511) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 
at dalvik.system.NativeStart.main(Native Method) 

行135:

Intent menuIntent = new Intent(this, SpeedDisplayMenuActivity.class); 

這個類是我的源文件夾的一部分,該項目在項目「生成」設置中被選中導出。

如果我解壓縮在我的bin文件夾.apk文件,並dexdump的classes.dex文件我看到那個類:

Wesleys-MacBook-Pro:$ ~/apps/adt/sdk/build-tools/18.1.1/dexdump classes.dex | grep "Class desc" | grep SpeedDisplayMenu 
    Class descriptor : 'Lcom/example/glass/speeddisplay/SpeedDisplayMenuActivity$1;' 
    Class descriptor : 'Lcom/example/glass/speeddisplay/SpeedDisplayMenuActivity;' 

爲什麼我越來越對應用程序啓動此異常?

回答

1

的NoClassDefFoundError是ClassNotFoundExecption一點點differente:這意味着主類引用類不能intialize靜態塊,找不到其它類,...

的proble是SpeedDisplayMenuActivity

「如果Java虛擬機或ClassLoader實例嘗試在類的定義中加載(作爲常規方法調用的一部分或 作爲使用新表達式創建新實例的一部分),並且不定義類可能會導致 被搜索到的, 類定義在編譯當前正在執行的類時存在, 但定義不能再找到。「

+0

將此標記爲正確,因爲它將我放在正確的路徑上(並且您的響應非常快!)。基本上,我爲一個不同的項目使用了新的遺蹟,但它阻止了上述類的鏈接。刪除了newrelic插件,並重建並運行。 – Innova

相關問題