Android の Java ライブラリのコードで NoClassDefFoundError が発生する 質問する

Android の Java ライブラリのコードで NoClassDefFoundError が発生する 質問する

ユーザーの間でエラーが頻繁に発生しています。起動中にアプリがクラッシュします。MainActivity がロードされるはずのときに、VM がクラスを見つけられないようです。原因がわかりません。アプリのアーキテクチャでは、無料版とプロ版の両方で共通のプロジェクトが使用されています。関連があるかどうかはわかりません。以下のスタック トレースを参照してください。何かご意見はありますか?

java.lang.NoClassDefFoundError: com.android.common.MainActivity
at com.mycompany.myapp.Splash.onCreate(Splash.java:23)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1615)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3687)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:842)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: com.android.common.MainActivity in loader     dalvik.system.PathClassLoader[/system/framework/com.google.android.maps.jar:/data/app/com.android.pro-1.apk]

編集:下のコメントをありがとう、リチャード。今はcom.android.Splash別のものに変更しました。いずれにしても、それは実際のクラス名ではありませんでした。私のミスです...!

ベストアンサー1

私も同じ問題を抱えていましたが、問題を解決するために次の操作を実行しました。

  1. プロジェクトの「プロパティ」に移動します。
  2. 「Javaビルドパス」を選択
  3. 「注文とエクスポート」タブを選択します
  4. ここで、選択したプロジェクトの「src」および「gen」パスと依存関係が表示されます。
  5. リストされている順序は、最初に「src」、次に「gen」パスです。
  6. これらを切り替えると、「gen」フォルダが「src」フォルダの前にビルドされます。

ゲン- プロジェクト内の自動化されたコード(依存関係と参照から)
ソース- プロジェクト内のソースコード

Eclipse を再起動する必要はありませんでした。そのまま動作し始めました。

正直に言うと、「Android ツール > プロジェクト プロパティの修正」を試したことはありませんが、同じことが起こる場合があります。わかりませんが、エラー メッセージを見て、ビルド パスに何か問題があると思い、上記の操作を実行しました。


編集


その後、それは十分ではなく、再びエラーが発生していました。その後、そのビューにリストされているすべての依存関係を「チェック」しました。これで再び動作します。これまでのところ順調です。再び失敗した場合は、これを更新し続けます。

ご参考までに: 前回の試みでは、「Android ツール > プロジェクト プロパティの修正」を試しましたが、うまくいきませんでした。

おすすめ記事