调试器在xCode 4中的不存在的断点处停止

时间:2011-03-15 08:07:53

标签: iphone xcode debugging xcode4 breakpoints

自升级到xCode 4以来,我的应用程序停在我认为不存在的断点处。当它断开时,没有断点显示,编辑说“线程:1停在断点17”。在Breakpoint导航器中查看,在任何地方都没有断点17,并且它所停留的线路没有列在任何地方。

其他人看到了吗?这可能是新的吗?

约翰

9 个答案:

答案 0 :(得分:25)

也许这是一个XCode的错误,但仍然有解决方案。

您可以使用LLDB查看和操作所有实际断点。

只需在lldb窗口中键入命令。

(lldb) is the prompt.

(lldb) help    -> for help
(lldb) help breakpoint   -> for breakpoint subcommand's help
(lldb) breakpoint list    -> list all the breakpoints.
(lldb) breakpoint delete  -> Delete the specified breakpoint(s).  If no breakpoints are
               specified, delete them all.
(lldb) breakpoint delete 7.1   -> delete breanpoint 7.1

and, you can use this command to continue the program:
(lldb) c

答案 1 :(得分:4)

检查断点如下。

命令+ alt + b 查看所有断点。

选择要删除的断点,然后按删除

答案 2 :(得分:4)

user278859的答案基本上是一个真正的答案,因为这似乎是Xcode 4中的一个错误。我只是遇到了同样的问题。我在UIWebView delegate的{​​{1}} - 方法中设置了一个断点(项目中没有其他活动断点),调试器在另一个方法中停止(在这种情况下重复shoudlStartLoadWithRequest)相同的对象。

所以我说这是一个Xcode错误。除了删除上面的断点之外,没有办法解决这个问题...截图:

enter image description here

答案 3 :(得分:3)

好的,我删除了违规类中唯一的断点,该断点不在调试器断线附近,问题消失了。

Fasttracks,感谢您的建议。我正在使用xCode 4和命令+ alt + b不再有效。现在有一个Breakpoint Navigator,其中列出了所有的brekpoints。列表中没有与断点发生线对应的断点。

答案 4 :(得分:2)

之前我遇到过同样的问题,我认为这是一个Xcode错误。您可以检查断点导航器(cmd 6)中是否有Xcode创建的不需要的断点,删除它们应该没问题。

答案 5 :(得分:0)

Xcode 4引入了一个Exception断点,默认情况下似乎是打开的。 即当有例外情况时就会中断。

即使您没有单击“断点”按钮,也会捕获异常。

您可以通过Debug Navigator检查它是否已被触发 - 您将看到“objc_exception_throw”。

答案 6 :(得分:0)

打开断点视图:alt + shift + 5然后右键单击空白区域并点击“全部删除”。它实际上会删除不存在的断点。

答案 7 :(得分:0)

在激活此类断点时,我发现了另一个案例:

如果在代码上设置断点,实际上没有为选定目标编译,则不会突出显示或标记此部分代码,并且在此文件的其他位置设置断点,调试器认为该断点尽可能接近。< / p>

所以你需要确保编译断点的代码是:-)

答案 8 :(得分:0)

不知道究竟是什么Swift error breakpoint ...我通过这样做启用了它:

enter image description here

猜猜会发生什么?!

它将作为自己的代码引发的错误的断点,即在您使用throw语句的任何地方。

有关详情,请参阅herehere