在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"
      }
    }
  ]
}

其他回答

我成功地在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"
      }
    }
  ]
}

像这样,在你的操作系统下:

        "osx": {
            "MIMode": "lldb",
            "environment": [{"name": "DYLD_LIBRATY_PATH", "value": "/Users/x/boost_1_63_0/stage/lib/"}]
        },

它为我的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"
        }
    ]
}

这是可行的

只需添加以下内容

“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"
        }
    }
]

我也有同样的问题,原来我在我的项目根目录中有一个。env文件,它覆盖了启动。json设置。我已经警告过你了。 :)