vs代码没有启动,配置问题与启动器?

时间:2017-01-24 20:49:31

标签: python json visual-studio-code launch

当我在VS Code中启动我的.py代码时,我遇到错误配置launch.json。查看launch.json的代码,它有一个警告“”Missing property“program”(40,9)“”。这是整个代码,但我还包括对代码似乎有问题的区域的近距离。

以下是“问题领域”的特写:

"debugOptions": [
            "WaitOnAbnormalExit",
            "WaitOnNormalExit",
            "RedirectOutput"
        ]
    },
    {                        <----- this is the problem vs code is having
        "name": "Python Module",
        "type": "python",
        "request": "launch",
        "stopOnEntry": true,
        "pythonPath": "${config.python.pythonPath}",

这是整个代码,以防你需要更大的视图来了解:

"version": "0.2.0",
"configurations": [
    {
        "name": "Python",
        "type": "python",
        "request": "launch",
        "stopOnEntry": true,
        "pythonPath": "${config.python.pythonPath}",
        "program": "${file}",
        "cwd": "${workspaceRoot}",
        "debugOptions": [
            "WaitOnAbnormalExit",
            "WaitOnNormalExit",
            "RedirectOutput"
        ]
    },
    {
        "name": "PySpark",
        "type": "python",
        "request": "launch",
        "stopOnEntry": true,
        "osx": {
            "pythonPath": "${env.SPARK_HOME}/bin/spark-submit"
        },
        "windows": {
            "pythonPath": "${env.SPARK_HOME}/bin/spark-submit.cmd"
        },
        "linux": {
            "pythonPath": "${env.SPARK_HOME}/bin/spark-submit"
        },
        "program": "${file}",
        "cwd": "${workspaceRoot}",
        "debugOptions": [
            "WaitOnAbnormalExit",
            "WaitOnNormalExit",
            "RedirectOutput"
        ]
    },
    {                        <----- this is the problem vs code is having
        "name": "Python Module",
        "type": "python",
        "request": "launch",
        "stopOnEntry": true,
        "pythonPath": "${config.python.pythonPath}",
        "module": "module.name",
        "cwd": "${workspaceRoot}",
        "debugOptions": [
            "WaitOnAbnormalExit",
            "WaitOnNormalExit",
            "RedirectOutput"
        ]
    },
    {
        "name": "Integrated Terminal/Console",
        "type": "python",
        "request": "launch",
        "stopOnEntry": true,
        "pythonPath": "${config.python.pythonPath}",
        "program": "${file}",
        "cwd": "null",
        "console": "integratedTerminal",
        "debugOptions": [
            "WaitOnAbnormalExit",
            "WaitOnNormalExit"
        ]
    },
    {
        "name": "External Terminal/Console",
        "type": "python",
        "request": "launch",
        "stopOnEntry": true,
        "pythonPath": "${config.python.pythonPath}",
        "program": "${file}",
        "cwd": "null",
        "console": "externalTerminal",
        "debugOptions": [
            "WaitOnAbnormalExit",
            "WaitOnNormalExit"
        ]
    },
    {
        "name": "Django",
        "type": "python",
        "request": "launch",
        "stopOnEntry": true,
        "pythonPath": "${config.python.pythonPath}",
        "program": "${workspaceRoot}/manage.py",
        "cwd": "${workspaceRoot}",
        "args": [
            "runserver",
            "--noreload"
        ],
        "debugOptions": [
            "WaitOnAbnormalExit",
            "WaitOnNormalExit",
            "RedirectOutput",
            "DjangoDebugging"
        ]
    },
    {
        "name": "Flask",
        "type": "python",
        "request": "launch",
        "stopOnEntry": false,
        "pythonPath": "${config.python.pythonPath}",
        "program": "fully qualified path fo 'flask' executable. Generally located along with python interpreter",
        "cwd": "${workspaceRoot}",
        "env": {
            "FLASK_APP": "${workspaceRoot}/quickstart/app.py"
        },
        "args": [
            "run",
            "--no-debugger",
            "--no-reload"
        ],
        "debugOptions": [
            "WaitOnAbnormalExit",
            "WaitOnNormalExit",
            "RedirectOutput"
        ]
    },
    {
        "name": "Flask (old)",
        "type": "python",
        "request": "launch",
        "stopOnEntry": false,
        "pythonPath": "${config.python.pythonPath}",
        "program": "${workspaceRoot}/run.py",
        "cwd": "${workspaceRoot}",
        "args": [],
        "debugOptions": [
            "WaitOnAbnormalExit",
            "WaitOnNormalExit",
            "RedirectOutput"
        ]
    },
    {
        "name": "Watson",
        "type": "python",
        "request": "launch",
        "stopOnEntry": true,
        "pythonPath": "${config.python.pythonPath}",
        "program": "${workspaceRoot}/console.py",
        "cwd": "${workspaceRoot}",
        "args": [
            "dev",
            "runserver",
            "--noreload=True"
        ],
        "debugOptions": [
            "WaitOnAbnormalExit",
            "WaitOnNormalExit",
            "RedirectOutput"
        ]
    },
    {
        "name": "Attach (Remote Debug)",
        "type": "python",
        "request": "attach",
        "localRoot": "${workspaceRoot}",
        "remoteRoot": "${workspaceRoot}",
        "port": 3000,
        "secret": "my_secret",
        "host": "localhost"
    }
]

2 个答案:

答案 0 :(得分:1)

这就是我所做的。它给了我同样的错误但是(44,9)我看到"program": "${file}"上面的代码。

我在你的案例(40)中遇到问题的部分添加了这一行,我将该代码放在"cwd": "${workspaceRoot}/.env"的正上方,所以我现在看起来像这样:

{
        "name": "Python Module",
        "type": "python",
        "request": "launch",
        "stopOnEntry": true,
        "pythonPath": "${config:python.pythonPath}",
        "module": "module.name",
        "program": "${file}",
        "cwd": "${workspaceRoot}",
        "env": {},
        "envFile": "${workspaceRoot}/.env",
        "debugOptions": [
            "WaitOnAbnormalExit",
            "WaitOnNormalExit",
            "RedirectOutput"
        ]
    },

这似乎修复了我的问题,希望这有助于某人。

答案 1 :(得分:0)

错误表示缺少'program'属性。如果我们查看该配置,

{                        <----- this is the problem vs code is having
    "name": "Python Module",
    "type": "python",
    "request": "launch",
    "stopOnEntry": true,
    "pythonPath": "${config.python.pythonPath}",
    "module": "module.name",
    "cwd": "${workspaceRoot}",
    "debugOptions": [
        "WaitOnAbnormalExit",
        "WaitOnNormalExit",
        "RedirectOutput"
    ]
},

果然,没有“程序”属性。这是必需的,所以如果你想使用那个配置,你应该添加它。

'program'属性必须指向程序开始调试。示例:"program": "${file}"调试打开的文件。 "program": "${workspaceFolder}/foo.py"调试工作区文件夹中的foo.py。

请参阅文档中的更多详细信息:https://github.com/DonJayamanne/pythonVSCode/wiki/Debugging