Отладчик останавливается на несуществующей точке останова в 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

Я нашел еще один случай, когда такая точка останова активирована:

Если вы установили точку останова на код, который на самом деле не скомпилирован для выбранной цели, эта часть кода не подсвечивается или не помещается, а точка останова устанавливается в другом месте в этом файле, где отладчик считается как можно ближе.

Итак, вы должны быть уверены, что код, где установлен контрольный пункт, компилируется:-)