2015-04-30 12 views
11

Mit dem neuen VSCode-Editor in einem node.js-Projekt arbeiten. Ich versuche, mein "Launch" -Profil für das Debugging zu konfigurieren, indem ich die launch.json-Datei bearbeite. Ich muss eine Verbindungszeichenfolge als Umgebungsvariable einrichten. Nach den Kommentaren in der Datei launch.json:Wie füge ich zu launch.json Umgebungsvariablen in VSCode hinzu

// Environment variables passed to the program. 
"env": { } 

Ich habe versucht, wie meine Umgebungsvariable Zugabe so:

"env": 
{ 
"CONNECTION_STRING": "Data Source=server;Initial Catalog=catalog;User ID=uid;Password=pwd;MultipleActiveResultSets=true" 
} 

Dies verursacht einen Fehler, wenn ich versuche, meine App zu starten; "OpenDebug Prozess wurde unerwartet beendet". Ich habe noch keine Protokolldateien usw. gefunden, die das Problem erklären könnten.

Ich weiß, dass diese App ordnungsgemäß funktioniert, wenn ich die Umgebungsvariable einstelle und meine App über die Standardbefehlseingabeaufforderung starte. Die App läuft auch wie erwartet, wenn ich meine Variable in der Datei launch.json auskommentiere; Ich kann mich einfach nicht mit der Datenbank verbinden.

Ich gehe davon aus, dass ich das falsche Format in der Datei launch.json verwende, aber ich habe noch keine Möglichkeit gefunden, dies zu tun.

Irgendwelche Ideen?

+0

Visual Studio Code 0.3.0 dieses Problem behoben hat. –

Antwort

5

Es scheint ein Problem mit Umgebungsvariablen unter Windows (und wahrscheinlich unter Linux) zu geben. Es funktioniert unter OS X. Wir untersuchen. Erwarten Sie bald eine Lösung.

Andre Weinand, Visual Studio-Code

+1

Visual Studio-Code 0.3.0 hat dies behoben. –

+0

ist das wieder in 0.9.2 auf OSX gebrochen? Einstellung "env", aber sie erscheinen nicht in Bearbeitung. Arbeitet in früheren Versionen, zumindest unter Windows. – antfx

+1

Ich habe gerade überprüft, dass die Einstellung env vars in VS Code 0.9.2 auf OS X funktioniert. Wenn es nicht für Sie funktioniert, melden Sie bitte einen Fehler mit reproduzierbaren Schritten hier: https://code.visualstudio.com/Issues/List –

2

als Problem zu umgehen können Sie Umgebungsvariablen, wenn VSCode starten, zum Beispiel dieses kleinen Powershell-Skript mit:

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" 

speichert es als vscode.ps1 und Call es von Kommandozeilen, wie folgt aus:

powershell ".\vscode.ps1 -vars @{ 'NODE_ENV'='test'; 'SOMETHING'='else' }" 
3

bin vorbei ich sie erfolgreich diemitEigentum in launch.json:

{ 
    "version": "0.2.0", 
    "configurations": [ 
    { 
    "type": "node", 
    "request": "launch", 
    "name": "SLS Webpack", 
    "protocol": "legacy", 
    "program": "${workspaceRoot}/node_modules/.bin/sls", 
    "cwd": "${workspaceRoot}", 
    "args": ["webpack", "watch", "-f", "${fileBasenameNoExtension}", "-p", "${fileDirname}/event.json"], 
    "env": {"AWS_REGION":"us-east-1", "SLS_DEBUG":"*"}, 
    "outFiles": ["${cwd}/dist/**/*.js"], 
    "sourceMaps": true, 
    "smartStep": true  
    } 
    ] 
} 
0

Wie dies unter Ihnen OS:

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