gpt4 book ai didi

java - Eclipse插件: how to activate terminate button in Debug view

转载 作者:行者123 更新时间:2023-12-01 05:47:29 25 4
gpt4 key购买 nike

我正在编写一个插件来扩展 Eclipse 以使用自定义编程语言。我的所有启动配置都正常工作,并且自定义语言中的任何程序都可以正确启动,但我似乎无法激活“调试” View 中的“终止”按钮。

根据我的研究,我知道实现调试器框架提供了终止操作,但是我不想在这个阶段实现该框架,只想选择终止程序而不是通过任务管理器取消。这可能吗?或者调试器框架是执行此操作的唯一方法吗?

这是 LaunchConfigurationDelegate 类的代码,

public void launch(ILaunchConfiguration configuration, String mode,
ILaunch launch, IProgressMonitor monitor) throws CoreException {

// getting the resource from the workspace
IWorkspace workspace = ResourcesPlugin.getWorkspace();
IWorkspaceRoot root = workspace.getRoot();

List<String> filenames = configuration.getAttribute(RELATIVE_PATH,
Collections.EMPTY_LIST);
List<String> rawPaths = configuration.getAttribute(RAW_PATH,
Collections.EMPTY_LIST);
List<String> projPaths = configuration.getAttribute(PROJECT_PATH,
Collections.EMPTY_LIST);

//CustomRunner is the interface to manage the custom language execution
CustomRunner runner = null;
try {
CustomOutputHandler outHand = new CustomOutputHandler();
runner = new CustomRunner(new File(projPaths.get(0)));
runner.setOutputHandler(outHand);

for (int i = 0; i < filenames.size(); i++) {
IPath temp = new Path(filenames.get(i));
IResource CustomFile = root.findMember(temp);

if (CustomFile == null) {
String msg = "The file "
+ "<"
+ temp.toString()
+ ">"
+ " could not be found in the workspace.\nIt may have been deleted or renamed.";
throw new FileNotFoundException(msg);
}
CustomFile.deleteMarkers(IMarker.PROBLEM, false,
IResource.DEPTH_INFINITE);
CustomErrorHandler errHand = new CustomErrorHandler(CustomFile);

runner.setErrorHandler(errHand);

//Runs the custom language file
runner.run(rawPaths.get(i));
}

之后就只有一堆 catch block 了。

我现在需要能够通过“调试” View 终止此启动,在运行模式下通过“运行”菜单的终止命令终止此启动。

现阶段我没有任何 DebugTarget。我的问题是:是否有另一种方法可以在不扩展调试框架的情况下终止此启动?

我确实在此启动方法中尝试了 launch.Terminate() 但没有成功。

最佳答案

除非您扩展平台调试支持,否则您无法连接到“调试” View 中的“终止”按钮 - 至少没有用于此目的的 API。您可以侵入调试框架的内部来添加支持而无需扩展,但扩展可能比这容易得多,并且将在 Eclipse 的 future 版本中工作

关于java - Eclipse插件: how to activate terminate button in Debug view,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5565253/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com