我正在寻求帮助,弄清楚如何在Visual Studio Code中为集成终端设置环境变量。目前,我可以使用工作区文件夹中的 .env 文件来执行此操作,但是我想更改此文件的文件名并创建另一个文件,例如dev.env和prod。环境为我的工作区设置“ python.envFile ”并不能解决问题,据我了解,在launch.json中进行更改是为了调试。
所有这些(并且很重要)的总体目标是运行带有特定环境变量集的flask shell(烧瓶Web框架,python的集成外壳),并能够通过交换文件来更改它们。我知道我可以通过在工作区设置中引入“ terminal.integrated.env.osx ”来进行设置,但我宁愿从文件中获取这些变量。
非常感谢您的时间和帮助。
UPD >>
我想一种解决方法是创建两个这样的任务:
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "FLASK SHELL DEV",
"type": "shell",
"command": "source ${workspaceFolder}/dev.env && ${config:python.pythonPath} -m flask shell",
"problemMatcher": []
},
{
"label": "FLASK SHELL PROD",
"type": "shell",
"command": "source ${workspaceFolder}/prod.env && ${config:python.pythonPath} -m flask shell",
"problemMatcher": []
}
]
}
但问题仍然存在。有没有办法对集成终端做同样的事情?
答案 0 :(得分:0)
如果您不想设置环境变量using the terminal,则可以使用configuration files进行设置。
答案 1 :(得分:0)
是的,您可以使用以下设置之一(取决于您的平台):
"terminal.integrated.env.linux": {},
"terminal.integrated.env.windows": {},
"terminal.integrated.env.osx": {
"PYTHONPATH": "${workspaceFolder}/src:${env:PYTHONPATH}"
},
但是,它们仅适用于集成终端,不适用于vs代码python扩展可能产生的任何其他进程(测试,整理,调试器)。对于那些您需要使用.env文件。
编辑:
值得注意的是,如果从终端启动VS Code,则它应该从终端环境中继承任何env变量(至少对于所有产生的子进程,可能不适用于集成终端)。