Java Eclipse插件";“操作未启用”;

Java Eclipse插件";“操作未启用”;,java,refactoring,eclipse-plugin,Java,Refactoring,Eclipse Plugin,我正在努力进行Java重构——我需要编写一个Eclipse插件来重构一些代码。这对我来说真的很难,如果我能一步一步地遵循工作代码,那就容易多了。我能找到的唯一相似的例子是一个样本 不幸的是,我不能让它真正起作用。每次尝试时,我都会收到“所选操作当前不可用”的信息 我已经导入了代码“runas->Eclipse应用程序”,然后尝试使用Eclipse文章中的improductind。我做错了什么 我很乐意得到任何帮助:) 您应该能够使该示例(如编写的)正常工作,或者您可能需要打开一个bug。当您在R

我正在努力进行Java重构——我需要编写一个Eclipse插件来重构一些代码。这对我来说真的很难,如果我能一步一步地遵循工作代码,那就容易多了。我能找到的唯一相似的例子是一个样本

不幸的是,我不能让它真正起作用。每次尝试时,我都会收到“所选操作当前不可用”的信息

我已经导入了代码“runas->Eclipse应用程序”,然后尝试使用Eclipse文章中的improductind。我做错了什么


我很乐意得到任何帮助:)

您应该能够使该示例(如编写的)正常工作,或者您可能需要打开一个bug。当您在RunAs中启动他们的示例时,您的错误日志中是否有任何错误


您还可以尝试看一些工作台重构。请参阅org.eclipse.ltk.internal.ui.refactoring.actions.MoveResourcesHandler,它设置了移动资源重构,如果您需要帮助,可以使用CTRL+SHIFT+T跟踪SDK类,我已经设法运行了它。对于其他将面临同样问题的人:

检查基本情况: 请记住,您只能选择一种方法,并且: 它必须存在于模型中(http://help.eclipse.org/helios/index.jsp?topic=/org.eclipse.jdt.doc.isv/reference/api/org/eclipse/jdt/core/IJavaElement.html)

它不能有任何错误

不能是构造函数

不能连接到批注声明

和:在编辑器大纲或包资源管理器中选择Java方法


很明显:)

检查处理程序类中的isEnabled()方法。我假设在创建新处理程序时,此方法的默认值返回false。这可能就是问题所在。

操作处理程序类应该是具有相关接口的障碍(检查错误控制台以确定缺少哪些接口,最有可能是“IActionDelegate”)

我成功地运行了它。对于其他有同样问题的人,我将写下帮助我的内容: