Однако теперь это работает против меня. ROS2 автоматически генерирует копии моего кода Python (расположенные по адресу ros2_ws/src) и помещает их в новый сгенерированный каталог (ros2_ws/install/...). Поскольку мой PYTHONPATH содержит этот каталог .../install/... (см. ниже), Перейти к определению моего интерпретатора Python vscode переходит в этот каталог установки, а не в исходный код. Это раздражает, потому что иногда я вношу изменения, которые впоследствии удаляются при сборке colcon. Это также делает представление файла на боковой панели огромным и затрудняет навигацию. Это выбивает меня из моего потока, и это должно (?) исправить.
Можно ли как-нибудь решить эту проблему? Приведенное ниже не помогло (между попытками я всегда нажимаю Ctrl+Shift+P, затем Разработчик: перезагрузить окно, перезапустить языковой сервер по какой-то причине не работает).
Что не сработало
Код: Выделить всё
{
...
"python.analysis.extraPaths": [
"/home/dev/ros2_ws/src"
],
"python.analysis.autoSearchPaths": false,
"python.analysis.exclude": [
"${workspaceFolder}/install"
],
"editor.gotoLocation.multipleDefinitions": "peek",
"editor.gotoLocation.multipleImplementations": "peek"
}
Код: Выделить всё
{
...
"python.envFile": "${workspaceFolder}/.vscode/.env"
}
Код: Выделить всё
colcon build --symlink-install
Код: Выделить всё
python3 -c "import sys; print('\n'.join(sys.path))" | sed -n '1,120p'
Код: Выделить всё
/home/dev/ros2_ws/install/somethingsomething_navigation/local/lib/python3.10/dist-packages
/home/dev/ros2_ws/install/somethingsomething_main/local/lib/python3.10/dist-packages
/home/dev/ros2_ws/install/somethingsomething_interfaces/local/lib/python3.10/dist-packages
/opt/ros/humble/lib/python3.10/site-packages
/opt/ros/humble/local/lib/python3.10/dist-packages
/usr/lib/python310.zip
/usr/lib/python3.10
/usr/lib/python3.10/lib-dynload
/home/dev/.local/lib/python3.10/site-packages
/usr/local/lib/python3.10/dist-packages
/usr/lib/python3/dist-packages
Выполнение следующих действий в терминале ROS2
Код: Выделить всё
which python3
>> /usr/bin/python3
Мой образ докера основан на Ubuntu 22.04
Мой ноутбук — Ubuntu 24.04
Моя версия Python для докера — Python 3.10.12
Расширения Vscode на удаленном компьютере:
Pylance
Python
Отладчик Python
Среды Python
Расширения Vscode локально:
Контейнеры разработки
Удаленно — SSH
Удаленно — SSH: редактирование файлов конфигурации
Удаленно — Туннели
Удаленная разработка
Удаленный обозреватель
Pylance
Python
Отладчик Python
Среды Python
Подробнее здесь: https://stackoverflow.com/questions/798 ... on-package
Мобильная версия