在Eclipse Helios中,我在同一个项目中有3个类,它们位于同一个工作区中。
这些类是(每个类的属性对话中的“路径”和“位置”)
A
path: /myproject/src/a/A.java
location: /home/me/dev/myrepo/somefolder/myproject/src/a/A.java
R1
path: /myproject/src/b/R1.java
location: /home/me/dev/myrepo/somefolder/myproject/src/b/R1.java
R2
path: /myproject/src/b/R2.java
location: /home/me/dev/myrepo/somefolder/myproject/src/b/R2.java
A
有f
方法,R1
和R2
中的方法都使用该方法。
如果鼠标悬停在f()
A
方法上,我会right click -> References -> Workspace (Shift+Ctrl+G)
或right click -> References -> Project
,它只会在结果窗格中显示R1
。
这有什么可能的原因?我应该改变哪些配置?我使用grep,我可以找到两个引用。也许Eclipse做了一些贫民窟,比如在下面使用grep并且实际上并没有分析源代码?
我已经尝试刷新项目(如果您认为我在Eclipse之外编辑了R2
),则没有帮助。
我无法发布真实来源,因为它是超级秘密。这是一些等效的来源(尽管这些问题没有发生):
A.java
package a;
public class A {
public void f() {}
}
R1.java
package b;
import a.A;
public class R1 {
void f() {
new A().f();
}
}
R2.java
package b;
import a.A;
public class R2 {
void f() {
new A().f();
}
}