【问题标题】:Xcode 4.2 showing the wrong line of code on error [duplicate]Xcode 4.2在错误时显示错误的代码行[重复]
【发布时间】:2011-12-19 21:18:58
【问题描述】:

可能重复:
Xcode always stopping at main.m after a crash

在过去的 Xcode 版本中,每次我调试崩溃时,它都会在罪魁祸首行中停止调试,并显示错误消息。

Xcode 4.2 在 main.m 中向我显示了这一行

int retVal = UIApplicationMain(argc, argv, nil, nil);

作为崩溃的罪魁祸首,尽管错误在另一个地方。

如何让它在 Xcode 4.2 中像以前在早期版本中一样工作?

【问题讨论】:

  • 我过去有过不正确的调试停止,它们通常在 main 中结束,就像它对你所做的那样。这通常意味着问题是内存问题,只有当编译器发现内存出错时才成为问题——就在它在 main 中停止的位置。我不确定这是否真的是一个可以解决的问题。
  • 你有没有在抛出异常时设置断点,这有时会让你跳到正确的行
  • 谢谢,但旧的行为要好得多。 Xcode 4 是对平庸的超级跳跃。
  • 我也遇到过类似的问题——应用程序会出错,但不会显示出错的代码行。这在 4.2 之前从来不是问题。
  • @Paul.s 谢谢我有一段时间没有做一个iphone应用程序了,异常断点是我忘记做的关键事情!在最新的 xcode 中,只需转到断点导航器(command-6)并单击底部的 +。哎呀 - 这是下面认可的答案,但由于某种原因没有出现。

标签: iphone ios xcode ipad


【解决方案1】:

转到断点面板,并添加左下角,单击+号并添加“异常断点”。

例外:所有
Break : 在投掷中。

这在大多数情况下应该可以解决问题。

【讨论】:

  • 这是正确答案。谢谢奥利弗
【解决方案2】:

我不知道如何恢复旧的行为。

Zane Claes 在此处为类似问题提供了很好的解决方案。

Xcode 4.2 debug doesn't symbolicate stack call

找到您的应用程序崩溃的类后,您可以使用调试器单步执行并找到罪魁祸首

【讨论】:

  • 我知道它正在崩溃的类,但 Xcode 并没有停在那里。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-10
  • 1970-01-01
  • 1970-01-01
  • 2012-10-23
  • 2012-02-03
  • 1970-01-01
相关资源
最近更新 更多