在node.js项目中使用新的VSCode编辑器。我试图通过编辑启动来配置我的“启动”配置文件进行调试。json文件。我需要设置一个connectionstring作为环境变量。根据发布会上的评论。json文件:
// Environment variables passed to the program.
"env": { }
我尝试像这样添加环境变量:
"env":
{
"CONNECTION_STRING": "Data Source=server;Initial Catalog=catalog;User ID=uid;Password=pwd;MultipleActiveResultSets=true"
}
这导致错误时,我试图启动我的应用程序;“OpenDebug进程意外终止”。我还没有找到任何日志文件等,可以解释什么是问题。
当我设置环境变量并从标准命令提示符启动我的应用程序时,我知道这个应用程序可以正确工作。如果我在启动时注释掉我的变量,应用程序也会按预期运行。json文件;我无法连接数据库。
我假设我在发布中使用了错误的格式。json文件,但我还没有找到任何方法,使此工作。
什么好主意吗?
我成功地在launch.json中使用env属性传递它们:
{
"version": "0.2.0",
"configurations": [
{
"type": "pwa-node",
"request": "launch",
"name": "Launch Program",
"skipFiles": [
"<node_internals>/**"
],
"program": "${workspaceFolder}/index.js",
"env": {
"TEST_VAR": "foo"
}
}
]
}
这是可行的
只需添加以下内容
“env”:{
“NODE_ENV”:“发展”
}
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Program", //TODO: cmd as launch program
"skipFiles": [
"<node_internals>/**"
],
"program": "${workspaceFolder}\\index.js",
"env": {
"NODE_ENV": "development"
}
}
]
作为一种变通方法,你可以在启动VSCode时设置环境变量,例如,使用这个小powershell脚本:
param(
$vars = @{}
)
$vars.Keys | % {
write-host "adding env variable: $_=$($vars[$_])"
[Environment]::SetEnvironmentVariable($_, $vars[$_], "Process")
}
$ver = "0.1.0"
& "$env:LOCALAPPDATA\Code\app-$ver\Code.exe"
保存为vscode。然后从命令行调用它,就像这样:
powershell ".\vscode.ps1 -vars @{ 'NODE_ENV'='test'; 'SOMETHING'='else' }"
它为我的django项目使用envFile变量。
您可以签出这个链接:https://code.visualstudio.com/docs/editor/debugging
{
"version": "0.2.0",
"configurations": [
{
"name": "Python: Django",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/project/manage.py",
"args": [
"runserver"
],
"django": true,
"envFile": "${workspaceFolder}/project/Server/settings/local.env"
}
]
}
我成功地在launch.json中使用env属性传递它们:
{
"version": "0.2.0",
"configurations": [
{
"type": "pwa-node",
"request": "launch",
"name": "Launch Program",
"skipFiles": [
"<node_internals>/**"
],
"program": "${workspaceFolder}/index.js",
"env": {
"TEST_VAR": "foo"
}
}
]
}