在Eclipse中终止调试进程后如何恢复视角?

70

Eclipse默认情况下会在您触发断点时自动切换到调试视图。

然而,当终止进程时它不会自动切换回之前的视图(如Java视图),这让我感到很烦恼。

即使没有任何正在运行的内容进行调试,它仍将停留在调试视图中。


13
这很悲哀。已经7年了,仍然没有实施。 - Odys
让我们在缺陷跟踪器中为该问题投票。https://bugs.eclipse.org/bugs/show_bug.cgi?id=46336 - user626528
6个回答

29
为了完善Mark的回答,该选项告诉Eclipse在程序暂停时何时切换到相关联的透视图 - 意味着当断点被触发时,它将切换到调试透视图。
完成调试后切换回其他透视图必须是手动的(鼠标点击)或使用“Switch Perspective”快捷键CTRLF8进行切换,或者使用Debug Perspective Auto Closer自动关闭功能,这是bug 46336的补充。(最初由zim报告)

Debug Perspective Auto Closer

调试结束时自动打开上一个透视图。

行为:(可配置:首选项->调试透视图自动关闭

  1. [默认]当所有调试启动都终止时,切换到第一个启动活动的透视图
  2. 当任何调试启动终止时,切换到该启动活动的透视图

Java perspective

如果你想避免它一开始就切换到Debug模式,你可以选择"Never"选项(在当时的Eclipse 3.2中引入)。
(你可以在“Run/Debug > Perspective”中找到给定的“Preferences”页面)

alt text

如果您想在调试程序正常终止的情况下切换回去(而不是您自己停止调试),那么您可能希望Eclipse能够确定您的程序正常终止并在那时切换到“默认”透视图... 然而,没有“默认”透视图的概念,那么Eclipse怎么知道要切换到哪个透视图呢?(“首选项/透视图/设为默认”仅适用于“打开透视图”对话框,但这可能与您实际想要切换回去的透视图不同)

Open perspective

此外,Eclipse是否应该关闭调试视图或只是切换到另一个视图?如果有多个程序正在运行,当其中一个终止时,您可能仍然对调试另一个程序感兴趣,或者可能不感兴趣。重点是,关于何时更改视角(以及更改为哪个视角)的决定对于机器来说是不合理的 - 它需要知道下一步要做什么的人来决定。

36
除了“机器制造不合理”这一部分,我同意所有内容。当没有进程需要调试时,Visual Studio 通过返回主视图处理得很好。 - Joe Ludwig
1
@Joe Ludwig:同意。Eclipse可能会成为其自身复杂性的牺牲品,使其无法提供此功能。 - VonC
11
我认为适当的解决方案是,在所有调试会话结束后,切换回我之前所在的视角,就像Joe提到的那样,Visual Studio和我使用过的所有其他IDE都默认执行此操作。 - helifreak
3
非常棒的回答,点赞。但是……你能详细说明一下“马克的回答”吗?我觉得他可能删除了自己的回答......那里是否有任何相关信息,你没有涵盖到? - MestreLion
1
@Campa 很有道理。我已经将您的评论包含在答案中以增加可见性。 - VonC
显示剩余3条评论

23

Ctrl + F8,是更改视图的默认快捷方式,可稍微减轻一些痛苦。


9

2
9年前的错误重复:https://bugs.eclipse.org/bugs/show_bug.cgi?id=46336,尽管我认为你的更好,更通用,而且不与Java视图绑定。 - MestreLion
我们可以投票支持 https://bugs.eclipse.org/bugs/show_bug.cgi?id=46336 ,也许这会促使他们真正解决这个 bug。 - user626528

4

我认为不可能让Eclipse自动切换回来,但是你可以在窗口右上角点击一个按钮来完成切换。

enter image description here


3
您需要编写Eclipse插件。我在这里找到了一个示例,说明如何在插件中切换透视图。请参见此处

2
截至2015年,Eclipse仍未解决这个基本的UI问题:官方错误报告已被分配(但未被修复)。
幸运的是,Sven Ramuschkat和Dirk Eismann编写了一个插件来解决这个问题:Eclipse/Flash Builder透视切换插件

插件现在会在调试会话终止后自动从Debug透视图切换回之前的非Debug透视图

它适用于Eclipse Luna(及以上版本)。

安装

下载zip文件,解压并将jar文件复制到您的eclipse/plugins文件夹中。
完成后,您将会看到一个新的Preference面板。

pref

一切都已配置好,如果在调试会话结束时打开了一个javaproperties文件,则Eclipse将切换回Java透视图。

对我没用。我使用 Java EE 透视图。在调试后,它会切换到 Java 透视图而不是 Java EE。另外,启用插件后,即使在非调试时尝试手动切换到 Java EE,它也会把它改回 Java(Luna 4.4.2)。 - Odys

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接