VSCode - 如何设置调试的工作目录

时间:2016-07-27 21:03:05

标签: python visual-studio-code

我开始使用vscode for Python。我有一个简单的测试程序。我想在调试下运行它,我需要设置运行的工作目录。

我如何/在哪里这样做?

7 个答案:

答案 0 :(得分:35)

您需要做的就是在launch.json文件中配置cwd设置,如下所示: { "name": "Python", "type": "python", "pythonPath":"python", .... "cwd": "<Path to the directory>" .... }

有关此内容的更多信息,请访问on the official VS Code docs website

答案 1 :(得分:16)

@ SpeedCoder5的评论应该作为答案;

具体来说,您可以指定一个动态工作目录。 (即,当前打开的Python文件所在的目录),请使用"cwd": "${fileDirname}"

如果您在运行Python时使用的是Python: Current File (Integrated Terminal)选项,那么您的launch.json文件可能看起来像下面的我的文件。

{
    "version": "0.2.0",
    "configurations": [
    {
            "name": "Python: Current File (Integrated Terminal)",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal",
            "cwd": "${fileDirname}"
    }, 

    //... other settings, but I modified the "Current File" setting above ...
}

Remember the launch.json file controls the run/debug settings of your Visual Studio code project;我的launch.json文件是由VS Code自动生成的,位于我当前“打开项目”的目录中。我刚刚手动编辑了文件以添加"cwd": "${fileDirname}",如上所示。

答案 2 :(得分:7)

此设置可以帮助我:

{
  "type": "node",
  "request": "launch",
  "name": "Launch Program",
  "cwd": "${workspaceFolder}\\app\\js", // set directory here
  "program": "${workspaceFolder}\\app\\js\\server.js", // set start js here
}

答案 3 :(得分:3)

我正在为在Node.js上使用TypeScript的人发布此示例配置

在我的项目中,我的Node.js服务器TypeScript文件位于Application_ts文件夹中 并且已编译的js文件将在名为Application的文件夹中生成

因为当我们在调试模式下运行应用程序或正常启动它时,我们应该从包含js文件的Application文件夹开始 所以下面的配置从我的application_ts也存在并且可以完美运行的根文件夹中运行调试

{
  "version": "0.2.0",
  "configurations": [
    {
        "type": "node",
        "request": "launch",
        "name": "Debug TypeScript in Node.js",
        "program": "${workspaceRoot}\\Application\\app.js",
        "cwd": "${workspaceRoot}\\Application",
        "protocol": "inspector",
        "outFiles": [],
        "sourceMaps": true
    },        
    {
        "type": "node",
        "request": "attach",
        "name": "Attach to Process",
        "port": 5858,
        "outFiles": [],
        "sourceMaps": true
    }
 ]
}

答案 4 :(得分:1)

您可以使用cwd

中的launch.json参数为调试的程序设置当前工作目录

答案 5 :(得分:0)

在某些情况下,将PYTHONPATHworkspaceFolder一起设置可能也很有用:

{
    "name": "Python: Current File",
    "type": "python",
    "request": "launch",
    "program": "${file}",
    "console": "integratedTerminal",
    "cwd": "${workspaceFolder}",
    "env": {
        "PYTHONPATH": "${cwd}"
    }
}

答案 6 :(得分:0)

要将当前工作目录设置为您当时正在执行的任何文件:

文件>首选项>设置> Python>数据科学>在文件目录中执行

感谢brch:Python in VSCode: Set working directory to python file's path everytime