VSCode多根工作区:跨OS配置Python路径遇模块导入错误
问题:VSCode多根工作区运行Python时无法导入utils模块
环境与配置说明
- 工作区:VSCode多根工作区,包含Project1和Project2两个项目
- 环境:Windows系统开发,Linux系统运行,希望根据运行系统加载对应环境文件(
.env或.env_linux)
.env 文件内容
PYTHONPATH=./src:./src/utils:./src/app:./src/services
launch.json 配置
{ "version": "0.2.0", "configurations": [ { "name": "Python: Run App", "type": "python", "request": "launch", "program": "${workspaceFolder:project1}/src/app/app.py", "console": "integratedTerminal", "justMyCode": true, "windows": { "envFile": "${workspaceFolder:project1}/.env" }, "linux": { "envFile": "${workspaceFolder:project1}/.env_linux" } } ] }
代码情况
app.py 中仅包含一行导入代码:
from utils import utils
问题与尝试过程
运行代码时触发错误:No module named 'utils',但编辑代码时Pylance可以正常识别该模块。
已尝试以下方法,均未解决问题:
- 在 settings.json 中添加终端环境变量配置:
"terminal.integrated.env.windows": { "python.envFile": "${workspaceFolder:project1}/.env", }, "terminal.integrated.env.linux": { "python.envFile": "${workspaceFolder:project1}/.env_linux", },
- 放弃环境文件方式,直接在 settings.json 中配置 PYTHONPATH:
"terminal.integrated.env.windows": { "python.envFile": "${workspaceFolder:project1}/.env", "python.pythonPath":"${workspaceFolder:project1}/src:${workspaceFolder:project1}/src/app:${workspaceFolder:project1}/utils", "PYTHONPATH":"${workspaceFolder:project1}/src:${workspaceFolder:project1}/src/app:${workspaceFolder:project1}/utils", },
- 将 .env 文件中的路径改为绝对路径,问题依旧。
到底哪里操作错了?
内容的提问来源于stack exchange,提问作者mike01010
相关产品推荐
相关产品推荐

