Eclipse已经非常令人印象深刻和有用,我称之为“源代码修饰符”(请建议一个更好的名称)。
例如,它具有“快速修复”,“单词完成”,“外化字符串”以及通过菜单(或键组合)修改源代码的其他功能。
现在,我希望添加我自己的“源代码修饰符”功能:我想:
这在Eclipse中是否可行?
如果是这样,我需要做些什么来完成这项工作?
答案 0 :(得分:2)
答案简短:
快速助手必须修改Java代码的AST。基本上,您必须将org.eclipse.jdt.core.dom.SimpleName
节点替换为您想要的节点。
答案很长:
org.eclipse.jdt.ui.quickAssistProcessors
扩展点使您可以贡献自己的Java代码快速助手。
要为扩展点创建新扩展,您需要首先在plugin.xml中提供所需的扩展名。例如,JDT定义了以下处理器
<extension
point="org.eclipse.jdt.ui.quickAssistProcessors">
<quickAssistProcessor
name="%defaultQuickAssistProcessor"
class="org.eclipse.jdt.internal.ui.text.correction.QuickAssistProcessor"
id="org.eclipse.jdt.ui.text.correction.QuickAssistProcessor">
</quickAssistProcessor>
</extension>
(有关各个属性的说明,请参阅扩展点文档)
然后,您需要创建实现org.eclipse.jdt.ui.text.java.IQuickAssistProcessor
接口的类,并修改此类中的AST。 (此类与声明扩展时指定的类相同)
提供正确的IJavaCompletionProposal
JDT为修正提案提供以下默认实施,可用于提供快速修复和快速帮助。
如果使用ASTRewrite,则应创建ASTRewriteCorrectionProposal。
ASTView插件
这可以帮助您可视化Java源文件http://www.eclipse.org/jdt/ui/astview/index.php
的AST答案 1 :(得分:1)
正确的名称是“Quick Assist”。您必须编写一些代码来创建快速助手。