2016-08-03 84 views
0

我正在爲現有應用程序開發Android Wear擴展。雖然在Android Studio中工作,我發現了以下我運行磨損模塊我經營的主要應用程序每次,並開始磨損應用程序崩潰:Android Wear - java.lang.ClassNotFoundException

Caused by: java.lang.ClassNotFoundException: Didn't find class "com.example.mobile.activities.MainActivity" on path: DexPathList[[zip file "/data/app/com.example.mobile-2/base.apk"],nativeLibraryDirectories=[/data/app/com.example.mobile-2/lib/x86, /vendor/lib, /system/lib]] 
      at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) 
      at java.lang.ClassLoader.loadClass(ClassLoader.java:511) 
      at java.lang.ClassLoader.loadClass(ClassLoader.java:469) 
      at android.app.Instrumentation.newActivity(Instrumentation.java:1067) 
      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2317) 
      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)  
      at android.app.ActivityThread.-wrap11(ActivityThread.java)  
      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)  
      at android.os.Handler.dispatchMessage(Handler.java:102)  
      at android.os.Looper.loop(Looper.java:148)  
      at android.app.ActivityThread.main(ActivityThread.java:5422) 

我發現的唯一的解決辦法這是File> Invalidate Caches/Restart,然後Build> Clean project。 之後,我可以運行磨損模塊(直到下一次主要運行)。

這使我的工作非常緩慢。有人可以幫我嗎?

+0

停止項目,重建項目,然後再運行它。我認爲這可能是因爲在運行項目之後添加MainActivity類,並且即時運行無法正確執行這項工作。 –

+0

@HosseinRashno MainActivity是穿戴應用程序啓動器的活動。它是當我剛創建應用程序時添加的。問題不斷髮生。 – AsafK

+0

你能展示所有的Gradle文件,以及你的項目是如何構建的嗎? –

回答

0

ClassNotFoundException被拋出當應用程序試圖使用以下方法通過字符串名稱加載一個類:

從版本1.4開始,此異常已被改進以符合通用異常鏈機制。現在可以在施工時提供並通過getException()方法訪問的「加載課程時引發的可選異常」現在稱爲原因,並且可以通過getCause()方法以及上述「遺留方法」訪問。 「

  • 鼠標右鍵點擊你的項目並選擇屬性

    發現這個SO related ticket,問題是做下面的步驟解決。

  • 從左邊的菜單中選擇Java Build Path
  • 選擇訂單和導出標籤
  • 從列表中確認您添加到項目中的庫或外部罐被檢查。
  • 最後,清理你的項目&運行。

您還可以檢查此SO票:Android Activity ClassNotFoundException - tried everything

+0

即時通訊工作在Android Studio上 – AsafK