在远程服务器中使用 vscode 调试脚本/调试[已修复]

问题描述 投票:0回答:1

我第一次在我的笔记本电脑中安装了 vscode 以在远程服务器上工作(传统上我在本地工作时使用spyder)。我在远程服务器中调试 python 代码时遇到困难。

  1. 问题1:launch.json文件的正确位置在哪里:
  • user/.vscode 文件夹(这里是我的笔记本电脑)?
  • 或者在工作/.vscode目录中(在这种情况下是远程服务器)?
  1. 问题2:如何正确运行调试器以使用其工具栏(ctrl+shift+D):
  • 如文档中所述,ssh 隧道已打开: ssh -2 -L 5678:localhost:5678 user@remoteserver
  • launch.json 文件已使用新配置进行更新(见下文)
  • 注意 pathMappings 对我来说仍然不清楚(远程服务器和文件上的 vscode 点,我需要本地副本吗?)
  • 现在我尝试使用 Ctrl+Shift+D 开始调试(不是在命令行中利用调试工具栏;我一直在使用 “Python:调试器:附加”

我尝试了一个基本的 python 文件,但它不起作用:我缺少什么?

```{
"version": "0.2.0",
"configurations": [
    {
        "name": "Python Debugger: Attach",
        "type": "debugpy",
        "request": "attach",
        "port": 5678,
        "host": "localhost",
        "pathMappings": [
            {
                "localRoot": "${workspaceFolder}",
                "remoteRoot": "."
            }
        ]
    },
    {
        "name": "Python Debugger: Python File",
        "type": "debugpy",
        "request": "launch",
        "program": "${file}"
    }
]

} ```

  1. 问题3:如何运行脚本?

Python 代码是使用脚本启动的,因为我需要提供一个参数(json 文件名):

  • python myScript.py --file=f.json
  • 我知道调试器在 python 文件而不是脚本上运行,但如何继续?有没有可以使用的 vscode 扩展?

感谢您对每个主题的建议

保罗

python-3.x remote-debugging vscode-debugger
1个回答
0
投票

现在我可以本地和远程调试 python 文件(包括参数)。现在我想通过加载特定变量环境来增加额外的难度:例如“模块加载”,“导出路径和ld_library”,“源环境”。

除非我错了,我想我需要定义一个本地 .env 文件,其中声明了所有先前的变量:它正确吗?我还在 launch.json 文件中添加了一个附加参数,使用:

"envFile": "${workspaceFolder}/.env"

这个方法正确吗? (尽管如此,它对我不起作用,所以我正在寻找我犯了错误的地方或者我是否搞砸了一些事情)

任何反馈都将受到高度赞赏

保罗

© www.soinside.com 2019 - 2024. All rights reserved.