【发布时间】:2016-03-23 02:38:53
【问题描述】:
在Eclipse IDE上编写Java代码时,按Control + Space会弹出内容辅助窗口。
例如,System. 的内容辅助窗口将列出类 System 的所有可用字段和方法。
我需要通过代码访问内容辅助窗口的“数据模型”。
使用上面的例子,它是:给定类名System,如何检索所有可用的字段和方法?
我在 grepcode.com 上花了一些时间研究这三个类的源代码:
org.eclipse.jdt.ui.text.java.JavaContentAssistInvocationContext
org.eclipse.jdt.internal.ui.text.java.JavaCompletionProposalComputer
org.eclipse.jdt.ui.text.java.CompletionProposalCollector
看起来ICompilationUnit 实例用于提供字段和方法名称。
那我不明白如何为jre系统库或第三方库中的类生成ICompilationUnit实例?或者如果我没有以正确的方式阅读代码,那么程序是如何找到字段和方法名称的? (我不需要担心偏移量和 UI 的东西,只需要“数据模型”部分)。
【问题讨论】:
-
ICompilationUnit 是 JDT 的一部分 Abstract Syntax Tree
标签: java eclipse eclipse-rcp eclipse-jdt