为什么 Visual Studio 代码不断更改工作目录?

Why does Visual Studio Code keep changing the working directory?

我正在尝试使用 VS Code 来完成 "Flask Web Development" 这本书。我可以从命令行获得简单的 hello world 示例 运行ning,但我想使用 VS 代码进行调试等。我修改 launch.json 文件以构建 Flask 配置:

    "name": "Flask",
    "type": "python",
    "request": "launch",
    "module": "flask",
    "env": {
         "FLASK_APP": "flasker.py",
         "FLASK_ENV": "development",
         "FLASK_DEBUG": "0"
    },
   "args": [
       "run",
           "--no-debugger",
           "--no-reload"
       ],
       "jinja": true
    },

其中 flasker.py。是我的 hello world 类型应用程序的名称。每次我尝试 运行 它,或者调试它,VS 都找不到文件。我的目录结构是:

dev
    --pythonStuff
        --pythonClass
        --flask
              flasker.py

pythonClass 是我最近 python class 拍的 dir/playground。 flask 目录是我目前工作的地方。 在控制台中输入密码总是会产生 pythonClass。我将 cd 到 flasker,导出 FLASK_APP=flasker.py 和 FLASK_DEBUG=1,然后是 flask 运行,一切都很好。但是当我尝试 运行 调试器时,它仍然指向 pythonClass 并且找不到 flasker.py 应用程序。我确实在 pythonClass 目录中找到了一个 .vscode 目录,其中有 launch.json 和 settings.json 文件,但不确定 how/why 它是在那里创建的。这两个文件都没有什么神奇之处。我用谷歌搜索了我能想到的 flask cwd/pwd PATH 的所有组合。我知道这可能是一个简单的修复,但似乎无法解决这个问题。感谢任何指导。

A launch.json attributes list 应该包括 cwd(对于 "most debugger")

因此请尝试添加一个 cwd 属性,以及您想要的确切路径,以检查是否得到遵守。
例如:

"cwd": "${workspaceFolder}",

OP GeoffWillis adds :

Seems odd that when doing a 'pwd' in the VScode console, it always defaults to ~/pythonStuff/pythonClass even if I launch VScode from my "flasky" directory using the "code" alias.
As stated, I can cd in the console to my flasky dir, and run the code just fine, but want the debugger.
I'm using OSX 10.13.6 on a newish Mac book pro, and I installed VScode, then installed Anaconda (With VScode included). Maybe they're stepping on each other?

我建议使用最小值 PATH,并且 OP 确认:

Just cd to the desired dir and type "code ." instead of just "code" seems to solve the problem.