現在のセットアップ:
ライブラリ プロジェクトであるMainProject
新しいプロジェクトであり、参照としてMainProjectを持つ BranchProject
デバッグ中に MainProject のファイルがフォーカスされている場合 (実際には、BranchProject にはグラフィックと xml レイアウトの変更しかありません)、デバッグ ウィンドウは読み取り専用の .class ファイルを開きます。.java ファイルを開いて直接編集できるようにしたい。
現在のセットアップ:
ライブラリ プロジェクトであるMainProject
新しいプロジェクトであり、参照としてMainProjectを持つ BranchProject
デバッグ中に MainProject のファイルがフォーカスされている場合 (実際には、BranchProject にはグラフィックと xml レイアウトの変更しかありません)、デバッグ ウィンドウは読み取り専用の .class ファイルを開きます。.java ファイルを開いて直接編集できるようにしたい。
この投稿からの Skyler の回答は私にとってはうまくいきました: Android R18 更新後にデバッグ ビュー編集 .class からソース コードを開く
要約は次のとおりです。修正するには、デバッグ ビューでプロジェクト名を右クリックし、メニューから [ソース ルックアップの編集...] を選択します。そこから、デフォルトのルックアップ パスを削除します。その後、プロジェクトが参照する関連プロジェクト (jar ではない) を手動で追加します。これを行うには、[追加] をクリックし、[Java プロジェクト] を選択してから、適切なプロジェクトをチェックします。
ライブラリプロジェクトを使用している場合、実際に行っていることの1つは、ライブラリプロジェクトをjarにコンパイルしてから、呼び出し元のプロジェクトでそのjarを参照することです。
プロジェクトを右クリックして[ビルドパスの構成]を選択すると、[ライブラリ]というタブが表示されます。[Androidの依存関係]の内部を見ると、ライブラリプロジェクトに対応するjarのリストが表示されます。
これらのjarは拡張可能であり、ソース接続用のスロットがあることを示しています。通常、これは編集可能であり、ソースを直接リンクできますが、ADTに関しては、これらはすでに入力されており、編集できません。
これらのファイルをデバッグするときは、このソースが添付された読み取り専用クラスファイルにリンクされます。これは、ソースファイルに対して直接実行しているのではなく、コンパイル済みのクラスファイルに対して実行しているためです。ADTチームがこの機能を導入するまでは、直接のソースコードにジャンプして、すべてを再構築する必要があります。
編集
@Stevenリンクされた回答を参照してください:)
.java
Eclipse IDE を使用してファイルをデバッグしているときに、同じ問題に直面しました。私の理解によると、この問題は、xyz.class
ファイルのxyz.java
ファイルまたはJAR
プロジェクトのビルド パスに配置したときに発生します。.class
またはJAR
ファイルをプロジェクト クラス パスから削除し、デバッグ モードで .java ファイルを再実行します。今度は、ソースが見つからないというウィンドウが表示されます。「ソースが見つかりません」ボタンをクリックし、ウィンドウの下部にある「重複を検索...」をチェックします。あなたの問題は解決しました:)
ここで私にとって良い解決策を見つけました:
EclipseでAndroidライブラリを使用し、Eclipseワークスペース内にあるソースファイルの代わりにクラスファイルにジャンプする
単純に、プロジェクトが依存する各ライブラリ プロジェクトを選択し、Top または Up を使用してプロジェクト出力の上に移動します。例えば。すべてのライブラリ プロジェクトを一番上に移動します。
上記のヒントをすべて試してもまだうまくいかない場合は、この解決策を試してみてください。
これがあなたを助けることを願っています
これは、Eclipseで依存関係を設定する方法に依存すると思います。MainProject のソース ファイルに依存するように BranchProject を設定する必要があります。コンパイルされた Class-Files に依存している場合、デバッガーはソース ファイルを認識しないため、クラス ファイルを開くことは明らかです。