2

私には2つのプロジェクトがあります:dummyとdummy-android。ダミー-androidはダミーのゲームクラスを使用します。ダミーをdummy-androidのビルドパスに含めましたが、エミュレーターで実行した場合。それは生成します:

E/AndroidRuntime(  691): java.lang.NoClassDefFoundError: com.dummy.Game
E/AndroidRuntime(  691):    at com.dummy.activity.AndroidGame.onCreate(AndroidGame.java:13)
E/AndroidRuntime(  691):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
E/AndroidRuntime(  691):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
E/AndroidRuntime(  691):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
E/AndroidRuntime(  691):    at android.app.ActivityThread.access$2300(ActivityThread.java:125)
E/AndroidRuntime(  691):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
E/AndroidRuntime(  691):    at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime(  691):    at android.os.Looper.loop(Looper.java:123)
E/AndroidRuntime(  691):    at android.app.ActivityThread.main(ActivityThread.java:4627)
E/AndroidRuntime(  691):    at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(  691):    at java.lang.reflect.Method.invoke(Method.java:521)
E/AndroidRuntime(  691):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
E/AndroidRuntime(  691):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
E/AndroidRuntime(  691):    at dalvik.system.NativeStart.main(Native Method)

ここに画像の説明を入力してください

ダミーをダミーから削除しようとしました-androidのビルドパス、クリーンアップ、再インクルード、クリーンアップしましたが、それでも機能しません。

私のプロジェクトではコンパイルエラーは表示されません!これはEclipseのバグです!それを修正する方法は?ありがとうございました。

更新: Eclipseを再起動し、2つのプロジェクトを何度もクリーンアップし、再実行しましたが、何も変更されませんでした。

更新: @MartinBrakash。両方のプロジェクトでプロジェクト固有の設定のチェックを外しました。新しい例外が生成されます。

05-15 04:48:14.575: E/AndroidRuntime(971): FATAL EXCEPTION: main
05-15 04:48:14.575: E/AndroidRuntime(971): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.dummy.activity/com.dummy.activity.AndroidGame}: java.lang.ClassNotFoundException: com.dummy.activity.AndroidGame in loader dalvik.system.PathClassLoader[/data/app/com.dummy.activity-1.apk]
05-15 04:48:14.575: E/AndroidRuntime(971):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2585)
05-15 04:48:14.575: E/AndroidRuntime(971):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
05-15 04:48:14.575: E/AndroidRuntime(971):  at android.app.ActivityThread.access$2300(ActivityThread.java:125)
05-15 04:48:14.575: E/AndroidRuntime(971):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
05-15 04:48:14.575: E/AndroidRuntime(971):  at android.os.Handler.dispatchMessage(Handler.java:99)
05-15 04:48:14.575: E/AndroidRuntime(971):  at android.os.Looper.loop(Looper.java:123)
05-15 04:48:14.575: E/AndroidRuntime(971):  at android.app.ActivityThread.main(ActivityThread.java:4627)
05-15 04:48:14.575: E/AndroidRuntime(971):  at java.lang.reflect.Method.invokeNative(Native Method)
05-15 04:48:14.575: E/AndroidRuntime(971):  at java.lang.reflect.Method.invoke(Method.java:521)
05-15 04:48:14.575: E/AndroidRuntime(971):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
05-15 04:48:14.575: E/AndroidRuntime(971):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
05-15 04:48:14.575: E/AndroidRuntime(971):  at dalvik.system.NativeStart.main(Native Method)
05-15 04:48:14.575: E/AndroidRuntime(971): Caused by: java.lang.ClassNotFoundException: com.dummy.activity.AndroidGame in loader dalvik.system.PathClassLoader[/data/app/com.dummy.activity-1.apk]
05-15 04:48:14.575: E/AndroidRuntime(971):  at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243)
05-15 04:48:14.575: E/AndroidRuntime(971):  at java.lang.ClassLoader.loadClass(ClassLoader.java:573)
05-15 04:48:14.575: E/AndroidRuntime(971):  at java.lang.ClassLoader.loadClass(ClassLoader.java:532)
05-15 04:48:14.575: E/AndroidRuntime(971):  at android.app.Instrumentation.newActivity(Instrumentation.java:1021)
05-15 04:48:14.575: E/AndroidRuntime(971):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2577)
05-15 04:48:14.575: E/AndroidRuntime(971):  ... 11 more
4

4 に答える 4

2

エラー メッセージは、プロジェクトに jar ファイルが含まれていないことを示しています。Android プロジェクトのルートに libs フォルダーを作成し、必要な jar ファイルを libs フォルダーに配置します。

于 2012-05-15T04:18:23.460 に答える
1

私はまったく同じ問題を抱えていましたが、Eclipseが他のプロジェクトへの参照を含めることでそれを取得できない方法を理解できません。それにもかかわらず、これは私がそれを解決した方法です:

1) Build Path -> Configure Build Path -> Tab Source -> Link Source

Browse for Link Folder location: /pathToMyProject/src
Folder name: src/newFolder

2) Tab Libraries -> Add Class Folder

/pathToMyProjectr/bin

それは私にとってうまくいきました!役に立てば幸いです。

于 2013-02-26T02:48:32.300 に答える
0

そうです、ガチョウの追跡にあなたを導いてすみません。users-libraryは、mapsapiのようなオプションのgoogleのものでなければならないと思います。

http://developer.android.com/guide/developing/projects/projects-eclipse.html#SettingUpLibraryProject

これはあなたが必要とするもののように聞こえます。

インポートするプロジェクトを右クリックし、[プロパティ]>[Android]>[ライブラリを確認]を選択します。

次に、他のプロジェクトで同じメニューを表示しますが、代わりに[追加]をクリックします。

他のクラスと同じようにインポートできるようになりました。少し迷った場合は、リンクに画像が表示されます。

于 2012-05-15T04:56:57.457 に答える
0

私の場合、問題は Java コンパイラが Java プロジェクトで 1.7 に、Android プロジェクトで 1.6 に設定されていたことです。

それらが同じになるように変更し、問題は解決しました。(しかし、多くの時間を失いました)。

ああ、私は「jarにエクスポート」->「libsフォルダーに配置」->「Javaビルドパスに追加」メソッドを使用しました。

乾杯

于 2012-08-31T16:13:42.663 に答える