Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.218.70.93] |
|
Сообщ.
#1
,
|
|
|
Добрый день!
Кто-нибудь задавался вопросом отладки приложения через командный интерфейс? Нашёл утилиту https://github.com/Samsung/netcoredbg. Пробую отладиться: в тестовом проекте dotnet new web dotnet run нахожу id процесса проекта (у меня называется testweb) 7024 netcoredbg --attach 7024 --server=5000 --interpreter=vscode Вывод идёт, но похоже, что символов отладки нет, и это ему не нравится: Цитата <- (E) {"seq":105,"body":{"module":{"id":"73d50060-007e-45f7-8815-79284317eb94","name":"Microsoft.AspNetCore.WebUtilities.dll","path":"/home/username/dotnet/shared/Microsoft.AspNetCore.App/3.1.2/Microsoft.AspNetCore.WebUtilities.dll","symbolStatus":"Symbols not found."},"reason":"new"},"event":"module","type":"event"} Кто-нибудь, подскажите, как это дальше отлаживать, точнее, как создать символы вручную? |
Сообщ.
#2
,
|
|
|
Цитата Sunless @ Кто-нибудь, подскажите, как это дальше отлаживать, точнее, как создать символы вручную? По идее они в процессе компиляции должны появится. попробуй сделать dotnet publish, тогда он все бинари, вместе с отладочными символами поместит в отдельную папку. Дальше можешь прям из этой папки запустить приложение командой: dotnet myapp.dll Ну либо символы можно еще поискать в папке, вместе с бинарниками, они там лежат с расширением *.pdb по идее. Еще можно попробовать поотлаживаться удаленно через ssh протокол из винды, тогда достаточно будет иметь отладочные символы на виндовз машине. Еще нашел какие то статьи по теме, может быть поможет: https://codeblog.dotsandbrackets.com/comman...ing-core-linux/ https://github.com/Microsoft/MIEngine/wiki/...m-Visual-Studio https://habr.com/ru/post/422141/ Добавлено Еще возможно понадобиться указать папку с отладочными символами дебагеру, но это надо смотреть доку по дебагеру, который ты используешь. Ну и собирать нужно дебажную конфигурацию. Что то типа: dotnet publish .\source\mysrc\MyProject.csproj -o:.\output\publish\mybindir -c:Debug >.\output\MyProject.log Эта команда выполнит восстановление проектов, компиляцию и задеплоит приложение в указанный каталог, все логи компиляции поместит в лог файл. Дальше заходишь в эту папку, и там уже будут и твои бинарники и отладочные символы и используемые nuget пакеты и необходимые библиотеки для запуска твоего приложения на любой машине. |
Сообщ.
#3
,
|
|
|
Благодарю. Похоже, что, помимо перечисленных инструментов, для продолжения работы с netcoredbg нужно изучить GDB MI, команды которой пока не распознаются при подключенном процессе.
|