Отладчик останавливается на несуществующей точке останова в xCode 4
С момента обновления до xCode 4 мое приложение останавливается на том, что, по моему мнению, является несуществующим моментом. Когда он ломается, нет точки останова, и редактор говорит "Thread: 1 Stopped at breakpoint 17". В навигаторе Breakpoint нет точки останова 17 в любом месте, и строка, в которой она останавливается, нигде не указана.
Кто-нибудь еще видит это? Это что-то новое, может быть?
Джон
Ответы
Ответ 1
Возможно, это ошибка XCode, но все еще получила решение.
Вы можете использовать LLDB для просмотра и управления всеми фактическими точками останова.
просто введите команду в lldb-окне.
(lldb) is the prompt.
(lldb) help -> for help
(lldb) help breakpoint -> for breakpoint subcommand 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
Ответ 2
проверьте точку останова следующим образом.
нажмите команда + alt + b, чтобы увидеть все точки останова.
выберите точку останова, которую вы хотите удалить, и нажмите удалить.
Ответ 3
user278859 Ответ в основном действительно является истинным ответом, поскольку, похоже, это ошибка в Xcode 4. У меня была такая же проблема. Я установил точку останова в одном месте в методе UIWebView delegate
shoudlStartLoadWithRequest
(никаких других активных точек останова в проекте), и отладчик останавливается другим способом (в данном случае повторно webViewDidFinishLoad:
) того же объекта.
Итак, я бы сказал, что это ошибка Xcode. Не нашел никакого способа установить этот бит, кроме удаления выше точки останова... Скриншот:
![enter image description here]()
Ответ 4
Хорошо, я удалил единственную точку останова в классе-нарушителе, где не было рядом с той строкой, где отладчик ломался, и проблема исчезла.
Fasttracks, спасибо за предложение. Я использую xCode 4, а команда + alt + b больше не работает. Теперь есть Breakpoint Navigator, где перечислены все брекпоинты. В списке не было точки останова, которая соответствовала линии, где происходил перерыв.
Ответ 5
У меня такая же проблема раньше, я думаю, что это ошибка Xcode. Вы можете проверить, есть ли какие-либо нежелательные точки останова, созданные Xcode в Breakpoint Navigator (cmd 6), удалить их, и это должно быть хорошо.
Ответ 6
Xcode 4 представил точку останова исключения, которая, по-видимому, включена по умолчанию.
т.е. когда есть исключение, которое он ломает.
Это приведет к исключению, даже если вы не нажали кнопку Breakpoints.
С помощью Debug Navigator вы можете проверить, было ли это вызвано - вы увидите "objc_exception_throw".
Ответ 7
Откройте представление Breakpoints: alt + shift + 5, а затем щелкните правой кнопкой мыши в пустом пространстве и нажмите "удалить все". Он фактически удалит несуществующие точки останова.
Ответ 8
Я нашел еще один случай, когда такая точка останова активирована:
Если вы установили точку останова на код, который на самом деле не скомпилирован для выбранной цели, эта часть кода не подсвечивается или не помещается, а точка останова устанавливается в другом месте в этом файле, где отладчик считается как можно ближе.
Итак, вы должны быть уверены, что код, где установлен контрольный пункт, компилируется:-)