Eclipse不会在断点处停止


75

Eclipse 3.5.2不会在断点处停止。就像调试器正在使用源文件的旧版本一样。

尝试了通常的刷新,清理了所有项目,构建了所有内容,没有任何更改。

已经处于调试模式并检查了断点。

* ok最后删除了整个项目,然后再次签出。但仍然好奇问题出在哪里。


2
在建造所有零件之前,您是否已全部清洗?
Yusuf K. 2010年

2
是,清理所有项目并自动将其设置为启用(将更新问题)。将尝试重新启动,pc一直在运行,非常时髦。
艾拉德(Ayrad)2010年

首先,更新到Eclipse 3.6和CDT7。顺便说一句,平台版本是3.5.2或Galileo,而不是C / C ++ IDE版本。
科斯2010年

您是否从Eclipse中运行应用程序?如果没有,则说明您正在使用远程调试,这可能是eclipse中的源代码与运行中的二进制代码不匹配。
凯恩2010年

@kane应用程序在雄猫服务器上运行。您如何确保源代码与正在运行的二进制代码匹配,而不是构建所有干净代码等?
艾拉德(Ayrad)2010年

Answers:


137

也许您已按下“断点”视图中的“跳过所有断点”按钮。


5
未按下该按钮。这只是行为出现异常的空行跳绳等其他破
Ayrad

你的意思是Remove all Breakpoints?我没有看到任何Clear breakpoint按钮。
2013年

1
我知道这是一个旧答案,但仍然有用!你救了我!断点起作用,然后停止工作。这就是原因,尽管我发誓我从未单击过该按钮……我正在将当前的(截至目前)Eclipse Luna 4.4.0和当前的CDT一起使用。
2014年

1
@ Dc01_xx感谢您的注释“清除所有断点” ..那是我的问题。我尝试了其他所有方法,但是无法使Eclipse Juno在我的j2ee应用程序中的断点处停止。为什么不添加它作为答案,以便面对此问题的人可以轻松看到它。?
2015年

似乎在我首次安装Eclipse时默认情况下已选中“跳过所有断点”。我确定没有检查。
唐·史密斯,

23

谢谢大家,这也确实挽救了我的一天。我之前按下了跳过断点,如果您执行相同操作,则会在断点处显示反斜杠图标。

使其恢复正常:

  1. 切换到“调试”透视图。
  2. 按下断点视图,点击->屏幕右上角,也可以通过Window-> show view-> breakpoints转到那里。
  3. 左侧的第5个图标,您将看到带有反斜杠的断点。按下那个。

要确认,请尝试在任意行上放置断点,该断点应正常显示。


5
<CTRL> + <ALT> + B将切换此模式而无需找到窗口,等等。我也是不小心以某种方式对自己做了...
JeffC 2015年


9

有时您确实启动了调试模式,但是调试器实际上并没有连接/分离。当我的笔记本电脑反应真的很慢时,我也遇到过几次这个问题。重新启动总是为我解决它。

还要尝试全部清理(Eclipse中的奇迹)。


您如何清洁所有人?清理所有什么?
TimStaley 2012年

在“项目”菜单下的@TimS中,选择“清除”,然后选择“清除所有项目”。
沙哈尔2015年

7

清除所有断点可解决此问题(在调试器角度:)Window -> Remove All Breakpoints

删除所有断点

重建项目对我不起作用。


6

请从Eclipse菜单中取消选中此复选框。

运行->跳过所有断点。

我认为,一旦在“调试/断点”窗口中选择“删除所有断点”选项,该功能将永久启用。


5

执行“全部清除”对我有用。

单击“项目”选项卡->“清洁”菜单项。

在“清除”对话框中,选择“清除所有项目”单选按钮。将其余值保留为默认值。点击“确定”按钮。

宾果!!远程调试对我来说像以前一样漂亮。


4

我也遇到了这种情况,在我的情况下,这是由于GDB启动器,我需要转到“旧版创建流程启动器”。为此,

  • 在Windows>首选项>运行/调试>启动>默认启动器中,将默认启动器更改为“旧版创建进程启动器”。

  • 或在应用程序的调试配置中选择此启动器(运行>调试配置>选择调试配置)。在底部的“主要”选项卡下,单击“选择其他...”,选中“使用特定于配置的设置”框,然后选择“旧版创建流程启动器”。


非常感谢弗洛里安,这救了我。我现在战斗了将近2天。它解决了问题,但是我徘徊了为什么SDF GDB无法正常工作。非常感谢。
ransh,2015年

正如我在我的答案stackoverflow.com/a/28631658/2937955中说的那样,在我的情况下,SDF GDB的问题是由于GDB无法正确理解源代码查找路径而忽略了断点引起的。
FlorianT 2015年

3

我有一个条件断点错误地放在方法入口点上。删除了该断点,它起作用了。

注意:尝试跳过所有断点,清理所有项目,刷新,在钉前没有运气的情况下关闭Eclipse。


有一个类似的问题-看起来某个地方的断点卡住了,可以完全阻止Eclipse出现任何工作断点。即使重新启动也无济于事-但是删除所有断点都可以。
Azrael Tod博士

2

我已经启用并配置了所有断点。但是,每当我单击“调试”时,它只会单步执行程序(按f5 / f6键),结果显示存在恶意设置

右键单击项目>调试配置>“调试器”选项卡>取消选中“在以下位置停止启动:”框


我有一个类似的问题,因为Eclipse在进入main时设置了临时断点,所以main中的所有断点都停止工作。禁用“启动时停止”解决了!
赫兹

2

这种情况的一个原因可能是,当播放图片和另一张图片比正常情况下小(由于屏幕分辨率更高)时,您已按下“跳过所有断点”。另一件事可能是,断点仅在VM线程下停止,而不在普通线程下停止!


2
  1. 转到(eclipse-workspace)\.metadata\.plugins\org.eclipse.wst.server.core并删除所有tmp文件夹。
  2. 清理并重新启动服务器。

1

我突然在Eclipse Juno CDT中也经历了断点的跳过。对我来说,问题是我设置了优化级别。一旦我将其设置为无,它就可以正常工作。要设置优化级别,请根据要使用的编译器,转到项目属性-> C / C ++构建->设置->工具设置,转到->优化,并将优化级别设置为:无(-O0)。希望这可以帮助!最好


1

我遇到了同样的问题,并且找到了真正的原因。

我编写了一些并发/多线程代码,同时在新线程中运行的代码中添加了一些断点。因此,当JUnit测试结束并很快停止时,代码将不会到达并在断点处停止。

对于这种情况,我们必须单击并选择“调试配置... ”中的“调试后在测试运行后保持JUnit运行”复选框


1

在最近几年使用的Eclipse版本上,断点似乎有效,但无效。目前,我正在使用Juno,并且遇到了断点,但又无法正常工作。上面的解决方案虽然是好的,但在我的情况下不起作用。

这是我的案例:

  1. 删除了项目

  2. 从svn检查回来

  3. 再次将其导入Eclipse

  4. 运行“ mvn eclipse:eclipse”

由于该项目也是Groovy / Http-bulder / junit-test项目,因此我必须:

  1. 将项目从Java转换为Groovy

  2. 将/ src / test / groovy添加到Java构建路径(构建路径上的Source文件夹)

  3. 在/ src / test / groovy的Java构建路径上包含“ ** / *。groovy”


1

切换工作空间对我有用。转到“文件”>“切换工作区”,然后选择其他文件夹(工作区)。调试开始像以前一样漂亮。



1

确保使用正确的JRE版本来调试项目。特别是如果它是第三方项目。

还要确保没有为任何断点设置触发点


0

当我使用Eclipse Juno时,我遇到了同样的问题。我安装了Eclipse Indigo,并且工作正常。尝试重新安装Eclipse。


0

一个不同的解决方案为我工作。我也遇到了同样的问题-调试点没有更新,尽管它们在IDE编辑器和“断点”选项卡中正确显示。

我的问题和解决方案是:创建项目时,“默认输出文件夹”指向不同的位置。在稍后的阶段,我将项目进行了美化,选择了“项目右键单击-配置-转换为Maven项目”。因此,我的项目文件系统中存在两套输出文件夹。多次清理项目并不能解决我的问题。在后台,它指向不同的二进制文件。最后,当我删除Maven Feature并清理项目时,这次一切正常。信封:Eclipse Juno和JRE是J2SDK 1.5。


0

在编译器标志中使用-O2时,所有断点都被跳过并标记为警告。在我的makefile中切换到-O0 -g,断点现在可以使用了。希望这可以帮助。


0

如果即使取消选中它仍未停止SKIP ALL BREAKPOINTS,则可以android.os.debug.waitfordebugger在断点之前添加它。

如果这样做,您的应用程序肯定会每次都在此时等待调试器,即使您只是在运行应用程序,也只有在您的设备连接到eclipse时才能找到它。

调试后,您必须删除此行以使应用程序正常运行,否则android会一直等待调试器。



0

就我而言,JBoss中的调试代码比Eclipse项目中的代码更旧。重建.war解决了该问题。


0

Eclipse Luna面临相同的问题。项目清理无效。重建无效。

使它起作用的是在每次调试之前在设备上卸载应用程序。


0

我使用Eclipse FileSync插件进行实时远程调试。确保在树状视图中打勾Allow different target folders并编辑Target folder文件设置。

Default target folder通过将Browse...按钮设置为不,Allow different target folders会将所有文件夹设置为相同的目标(我都将libsclasses设置为默认文件夹,libs因此我的断点没有更新)。


0

我的问题是我的调试视图已关闭,并且当我尝试达到断点时,eclipse只会冻结并且无法指示停止位置。

您可以通过单击窗口>显示视图>调试在Mac上显示调试视图。


0

Eclipse 4.7 / Oxygen自2017年6月发布以来,出现了一个新概念“ Triggers for breakpoints”,该概念在断点“ blue bullet”图标旁边显示为小“ T”。

最初被触发器抑制的所有其他断点将仅在命中任何触发器点之后才会命中。击中一个触发点后,将禁用所有触发,并在运行后将其重新启用。

为了重置所有“触发”标志,您需要执行以下步骤:

  1. 切换到“调试”透视图。
  2. 右键单击“断点”视图
  3. 选择“删除所有触发器”。

注意:此步骤不会删除所有断点,这是在同一上下文菜单中选择“全部删除”时发生的。

注:键盘快捷键,以使触发器是“ALT-R”,选择“断点”视图时,这需要上的快捷方式优先,以用其助记符打开“运行”菜单。



0

就我而言,我必须先启用然后禁用中的选项Preferences。我不希望debug view在遇到断点时继续跳动,因此我禁用了此选项,但是导致了问题所在。

解决方案是再次启用它,启动调试会话,命中断点并显示在UI中,然后再次禁用该选项。

看起来像Eclipse 4.17中的错误

在此处输入图片说明

更新

还有另一种更简单的方法,使Eclipse在断点处显示调试突出显示部分,或者刷新调试UI以使其正常工作。到达断点后,如果您尚未进入Eclipse,Eclipse将要求您切换到调试模式,单击switch按钮,然后激活debug选项卡/视图,您会注意到步进按钮已激活,并且断点行被突出显示。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.