【问题标题】:how to get reference method for class in intellij plugin如何在intellij插件中获取类的参考方法
【发布时间】:2018-12-06 18:46:12
【问题描述】:
我想开发一个 IntelliJ 插件
我有两节课
public class A { public void sum() {}}
public class B extends a{ }
我的问题是如何在 B 类中搜索 sum 方法的引用(用法)而不包括 A 类中的用法
我正在使用 ReferencesSearch#search,但它获取了 A 类中的方法用法
【问题讨论】:
标签:
java
intellij-idea
intellij-plugin
【解决方案1】:
如果您只需要在单个类中搜索用法,可以将包含该类 (new LocalSearchScope(psiClass)) 的作用域传递给 ReferencesSearch.search()。
如果您需要搜索除A类之外的所有用法,您可以使用PsiTreeUtil.isAncestor()检查ReferencesSearch.search()返回的用法是否包含在A中。