5

コードのデバッグに問題があります。AsyncTasksの1つがRuntimeExceptionをスローしますが、コードのどの行がこれに関与しているのかわかりません。私は一般的にEclipseとJavaに慣れていないので、これらすべては私にはかなり混乱します。

Eclipseのデバッグウィンドウには、RuntimeExceptionが原因でAsyncTaskが一時停止されていることが示されています。その下には、特定のコード行を示す3行があります。ただし、これらの行はコードに存在しないため、アプリケーションがクラッシュする原因がわかりません。Java / Androidでのデバッグに不可欠な何かが欠けていますか?

ちなみに、これらは私が与えられた3つの行です。

ThreadPoolExecutor.runWorker(ThreadPoolExecutor$Worker) line: 1086  
ThreadPoolExecutor$Worker.run() line: 561   
Thread.run() line: 1096 

どのように私はそれを扱うことになっていますか?助けていただければ幸いです。

4

3 に答える 3

1

logcatを使用するのが最適です。これにより、スタックトレースと発生したエラーが表示されます。コードをステップインすることに大きな成功を収めたことはありませんがDDMS、logcatにエラーが表示されているため、通常、エラーが発生した理由を簡単に特定できます。

ログキャットがEclipse内に表示されない場合は、ログキャットを開くためのPratikの回答を参照してください。

于 2011-08-31T14:25:11.040 に答える
1

ddmsで、エラー、警告、またはその他のタイプのメッセージに関連するメッセージをlogcatウィンドウに表示できます。これは、ddmsでlogcatが見つからない場合は、メニューの[ウィンドウ]->[ビューの表示]->[logcat]をクリックします。その上で、同じddmsでメッセージを表示できるようになります。また、デバイスを選択するデバイスウィンドウを取得して、そのデバイスからlogcatにメッセージをデバッグまたは取得できます。

この方法でチェックして、エラーの詳細をこのlogcatの詳細に見つけることができます

于 2011-08-31T14:12:27.053 に答える
0

Rajeevはそれを正しく理解しました-例外にブレークポイントを設定すると、デバッガーはそれをキャッチする行ではなく、それをスローする行でブレークします。このようにして、例外の原因を確認できます。

于 2011-11-20T22:28:29.903 に答える