環境
私はちょうど2つのファイルを持つ単純なtest-foo.jar
ライブラリがありますとのEclipse - 添付のソースなしでライブラリのJavaの参照を検索
- インタフェース
Foo
void doStuff()
つのメソッドを持つクラス
Bar
を単一のメソッド
void executeFoo(Foo foo)
、これは単に呼び出します
foo.doStuff()
次に、FooImpl
という単一のクラスのEclipse Javaプロジェクトがあり、Foo
を実装しています。このプロジェクトのビルドパスエントリはtest-foo.jar
です。このJARのソースコードは添付されていません。
問題
は、今私が実際にdoStuff()
メソッドを呼び出すかについて少し興味があります言うことができます。だからFooImpl#doStuff
署名をクリックし、Ctrl + Shift + G(参照を見つける)を押します。検索結果にBar#executeFoo
が表示されますが、結果は実際には空です。
質問
私は、これは(今より数年のためにEclipseを使用して)Eclipseで動作すると思って、私は少し混乱しています。しかし、それはソースが添付されたライブラリ(これまで私が気づいていなかったもの)のためだけに機能するようです。
ソースがないプロジェクトライブラリのタイプ(またはメソッド)の参照(または使用)を見つける方法はありますか? Eclipseがインデックスを作成して.class
のファイルの参照を表示しないのはなぜですか?
追加情報:
- 参照を見つけるとすぐに、私はJARにソースコードを添付して動作します。
- 私は、Eclipse JDTの開発者がソースなしないインデックスか検索
.class
に決めた理由を知ることに興味を持っています。 - 私がソースコードを持っていなくてもと呼んでいるが非常に有用な情報であることに注意してください。
- Eclipse is indexing method referencesが
.class
にあります。 - そして、NetBeansは "うまくいかない"ということもあります)。
重複がありますか? http://stackoverflow.com/questions/5268998/find-methods-calls-in-eclipse-project –
@MikeKoch nope ...その質問のOPは知りません。呼び出し階層は、メソッド参照の異なるビューです。私は知っている(少なくとも私は知っていると思う:))参照を検索する方法。ライブラリにソースが添付されていない場合は機能しません。 –
barがfooImpl.doStuff()を参照しませんが、代わりにfoo.doStuff()を参照すると、fooImpl.doStuff()メソッドへの参照の検索と一致しません。 – DwB