eclipse 3.7.2的包org.eclipse.debug.internal.ui.actions.context中缺少TerminateAction.java
我们正在尝试将eclipse从我的项目从3.2.2更新到3.7.2。并发现包eclipse 3.7.2的包org.eclipse.debug.internal.ui.actions.context中缺少TerminateAction.java,java,eclipse,eclipse-plugin,eclipse-indigo,Java,Eclipse,Eclipse Plugin,Eclipse Indigo,我们正在尝试将eclipse从我的项目从3.2.2更新到3.7.2。并发现包org/eclipse/debug/internal/ui/actions/context中缺少TerminateAction.java。有人能告诉我3.7.2版的TerminateAction.java的替代方案是什么吗。以及它为什么被改变 我发现了与Terminate和Relaunch相关的bug,但没有找到TerminateAction.java的bug 我真的很感激你能帮我一个忙 更新: 下面是引用Termina
org/eclipse/debug/internal/ui/actions/context
中缺少TerminateAction.java
。有人能告诉我3.7.2版的TerminateAction.java
的替代方案是什么吗。以及它为什么被改变
我发现了与Terminate和Relaunch相关的bug,但没有找到TerminateAction.java的bug
我真的很感激你能帮我一个忙
更新:
下面是引用TerminateAction.java的代码段:
`IWorkbenchPage page = window.getActivePage();
if (page != null) {
LaunchView view = (LaunchView) page.findView(IDebugUIConstants.ID_DEBUG_VIEW);
if (view != null) {
TerminateAction action = (TerminateAction) view.getAction("terminate");
if (action != null) {
action.contextChanged(view.getViewer().getSelection(), view);
}
}
}`
@Chandrayya GK:
这里的contextChanged是属于classorg.eclipse.debug.internal.ui.actions.context.AbstractDebugContextAction
类的方法,因此我认为我不能在这里使用TerminateCommand
,因为它扩展了DebugCommandAction.java
,而缺少该函数
在哪里可以找到contextChanged()
方法,或者我们可以继续创建自己的TerminateAction
类,类似于以前的类。
请建议是否有其他解决方案
感谢在包名中包含
内部
的Eclipse类仅供内部使用,因此可能会更改或删除,恕不另行通知-请参阅
调试插件定义了一个id为org.eclipse.debug.ui.commands.Terminate
,听起来可能是您想要的。试着调用那个命令
更新:
基本上,通过使用这个内部代码,你已经把自己挖进了一个大洞
AbstractDebugContextAction
也是内部的,已被删除,contextChanged
方法也是如此。iasynchronousterminatedapter
接口使用的所有终止代码也都消失了。看起来所有这些代码都经过了重构,使用了较新的命令
和处理程序
范式,而不是旧的JFace操作
您应该能够调用新的org.eclipse.debug.ui.commands。使用IHandlerService
终止
命令,但您必须计算出它在当前选择等方面的期望值。检查该类是否已弃用。我想是的
在grep代码中搜索此类(
TerminateAction
)时,我找到了。表示该类被折射并重命名为其他类。Greg,感谢您的快速回复,我已更新了查询。也许这会帮助你更好地理解。谢谢你的快速回复,我已经更新了我的查询。也许这会帮助你更好地理解