[英]Eclipse JDT: how to get data model for Java content assist
在 Eclipse IDE 上编写 Java 代码时,按Control + Space<\/kbd>会弹出内容辅助窗口。
例如,
System.<\/code>
将列出系统类的所有可用字段和方法。
我需要通过代码访问内容辅助窗口的“数据模型”。
使用上面的例子,它是:给定类名
System<\/code> ,我如何检索所有可用的字段和方法?
我在 grepcode.com 上花了一些时间研究这三个类的源代码:
org.eclipse.jdt.ui.text.java.JavaContentAssistInvocationContext
org.eclipse.jdt.internal.ui.text.java.JavaCompletionProposalComputer
org.eclipse.jdt.ui.text.java.CompletionProposalCollector
您可以使用 Eclipse JDT 语言服务器,它已被不同的编辑器(例如 Visual Studio Code 和 EMACS)使用: https<\/a> :\/\/github.com\/eclipse\/eclipse.jdt.ls
这样,您将能够在 LSP 定义中提供许多可用的 JDT 功能(例如代码完成、引用、诊断等): https<\/a> :\/\/microsoft.github.io\/language-server-protocol\/specifications\/specification -当前的\/<\/a>
通过 Maven 可以使用 LSP4J 的 Java 绑定:
<dependency>
<groupId>org.eclipse.lsp4j</groupId>
<artifactId>org.eclipse.lsp4j</artifactId>
<version>0.12.0</version>
</dependency>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.