1.eclipse插件 call hierarchy 的实现原理是什么?
eclipse插件 call hierarchy 的实现原理是什么?
首先告诉你一个做插件的人都知道的秘密:如果你想要看eclipse的某个功能是怎么实现的,你可以按下alt shift f1 查看视图的实现类,而按下alt shift f2 可以查看弹出菜单的如何用软件抓源码实现类。
Call Hierarchy 的实现类是OpenCallHierarchyAction。
(如果你没有源码,凯撒内核源码怎么用请下载eclipse sdk,智播联盟系统源码或者直接下载eclipse经典版,或者下载eclipse rcp版)
好了你可以去看代码实现了。
个人猜测的做法:
遍历工作间的所有Type(包含class 和 interface) ,根据语法分析树查找是否有调用语句。
(语法分析树的用法可以查JDT的AST)