Eclipseでコードをデバッグしているときに、実際に.classファイルのソースを表示しているため、エディターを開いて編集できないことに気付くとイライラします。デバッグモードでEclipseに.classファイルではなく.javaファイルを開かせるにはどうすればよいですか?
編集:コードでブレークポイントに到達すると、MyFile.javaではなくMyFile.classに移動するため、コードは表示されますが編集はできません。
編集:AndroidとADTR18と関係があると思います
この問題をもう少し深く調べる時間と正当な理由をようやく見つけた後、ソーンビョルンの答えについて少し詳しく説明します。
最近、GoogleはAndroidプロジェクトが外部のAndroidライブラリをパッケージ化する方法を変更しました。ADT R17(私は思う)では、外部プロジェクトのソースを.jarファイルにパッケージ化し、AndroidDependenciesまたは/libsフォルダーのプロジェクトに直接含め始めました。
これで、デバッガーがブレークポイントに到達すると、.jarにソースコードが表示され、基本的に.classファイルを編集するように指示されます。問題は、このファイルが読み取り専用であるため、.javaソースを手動で検索する必要があることです。(痛み)
修正は、デバッグビューでプロジェクト名を右クリックし、メニューから[ソースルックアップの編集...]を選択することです。そこから、デフォルトのルックアップパスを削除します。その後、プロジェクトが参照する関連プロジェクト(jarではなく)を手動で追加します。これを行うには、[追加]をクリックし、[Javaプロジェクト]を選択して、適切なプロジェクトを確認します。
さて、これが働いた人の数を考えると、私は「あの男」になるのは嫌いですが、これは私にとってはまったくうまくいきませんでした。「ソースルックアップの編集...」メニュー項目がコンテキストメニューになかったことを意味します。デバッグパースペクティブ(おそらくデバッグパースペクティブのプロジェクトエクスプローラー)でこれを行うための指示を見逃しませんでした。アプリの実行中とアプリの一時停止中に試してみました。アプリケーションのプロジェクト(おそらく手順が参照しているもの)とライブラリのプロジェクトのメニューを確認してみました。サイコロはありません。これは最新のEclipseビルドによるものです。
しかし、私は問題を解決することができました:
main project properties -> Java Build Path -> Projects
、メインプロジェクトが依存するプロジェクトをそこに追加します。Order and Export
タブに切り替えてチェックを外しますAndroid Dependencies
何らかの理由で、EclipseはクラスファイルがJavaファイルからのものであるとは信じていません。これは多くの場合、誤って構成されたビルドパス、またはプロジェクトがjarファイルを生成する代わりに使用されるjarファイルです。
プロジェクトマネージャーパネル(<->
ボタン)を見て、Eclipseがクラスファイルを見つける場所を確認し、ソースファイルでプロジェクトの代わりにその場所を使用する理由を理解します。