Точки останова не достигаются в JetBrains Rider?

Я пытаюсь установить точку останова в JetBrains Rider, но отладчик не ломается.

Я точно знаю, что приложение должно дойти до кода, который я пытаюсь сломать, поскольку в программе появляются изменяющиеся строковые литералы.

Я полностью переустановил все свои программы JetBrains (стирание настроек). Я также пробовал все ответы в этом потоке: точка останова не срабатывает во время отладки, но безуспешно.

Эта ошибка не возникает в Visual Studio, но возникает в любом проекте в Rider.

Этого также не происходит с моей другой копией Rider, которую я использую на другом компьютере.

Я ценю любую помощь, спасибо!


person Jessica    schedule 30.07.2018    source источник


Ответы (7)


Еще одно предостережение: я снова начал использовать Rider после отсутствия, я нажимал кнопку "воспроизведение" (треугольник), а не кнопку с изображением ошибки.

(D'oh!)

person Baron    schedule 09.12.2019
comment
Также замечание для тех, кто перешел с VS, как я: клавиша F5 не запускает отладку, она просто запускает код; даже при использовании раскладок VS. - person janw; 16.07.2020

Я нашел причину этого.

Начиная с Rider 2018.1.3, ваше решение должно находиться на том же диске, что и копия Rider, которую вы используете.

Эта проблема упоминается в службе поддержки JetBrains здесь.

Вы можете временно решить эту проблему, переместив решение на тот же диск или переустановив Rider.

person Jessica    schedule 01.08.2018
comment
Это тоже была моя проблема, но отладка работала в VS2019 - в Rider при наведении курсора на отключенную точку останова вы увидите сообщение типа «модуль не найден в D: \ Folder \ Code \ Script.cs». Переместите проект на тот же диск, что и райдер, очистите решение, перезапустите окна, запустите из Rider, успешно достигнув точки останова. Также убедитесь, что в настройках сборки вашего проекта Unity включен режим разработки и включена отладка по скрипту. - person Alex; 06.07.2021

Что касается ответа Джессики выше, похоже, что открытие решения в Rider с использованием абсолютного пути системы (т.е. /System/Volumes/Data/Users/...), похоже, действует так, как если бы оно находилось на отдельном диске.

Сведя себя с ума около четырех часов, я создал новое решение и изменил каталог решения с системного пути на /Users/..., затем скопировал свой проект в это новое решение, в котором были исправлены точки останова, и при открытии проекта с экрана приветствия Rider теперь отображается каталог решения как относительный путь (~/Users/...)

person Luke    schedule 24.07.2019

Другое решение для вас (или других людей, которые сталкиваются с этим):

Если у вас есть "COMPlus_EnableDiagnostics": "0" в вашей конфигурации или параметрах запуска, вы также не сможете достигать точек останова.

person chrjs    schedule 28.10.2020

Очистка и восстановление решения, а затем удаление и чтение точки останова сработали для меня!

person Oli    schedule 03.11.2020

То, что я делал раньше, было:

  1. Откройте решение
  2. Установите несколько точек останова
  3. Нажмите кнопку "ошибка" в Rider (рядом с кнопкой воспроизведения)
  4. Chrome автоматически открывался с URL-адресом, указывающим на мои службы
  5. Служба будет работать, как ожидалось, но точки останова не будут работать
  6. Остановить службу
  7. Измените код
  8. Запустить сервис
  9. Обновите Chrome Windows с шага 4
  10. Я бы увидел модификации в Chrome. Но никакие точки останова не сработают.

Единственное, что я изменил, - это то, что после шага 2 я выполняю

Выполнить - ›Присоединиться к локальному процессу ... -› w3wp

После этого я просто делаю те же шаги, что и раньше, но теперь точки останова попадают ...

Ссылка

person Mohammad Fazeli    schedule 11.04.2021

В 9 случаях из 10 это происходит по одной из следующих причин:

1) You did not attach to the correct process

2) The code is not executing on the breakpoint

Если вы столкнулись с этой проблемой при попытке подключиться к конечной точке API

Убедитесь, что у вас отключен WebDAV в разделе Windows «Включить программы и компоненты».

По какой-то причине это, кажется, блокирует запросы API, что, в свою очередь, делает невозможным достижение точки останова. Лично мне пришлось потратить несколько часов на воссоздание вызова в Postman, чтобы на самом деле увидеть, что что-то в IIS блокирует запрос (хотя авторизация была правильной).

person Kellen Stuart    schedule 06.02.2020