2015-04-30 15 views
11

Làm việc với trình soạn thảo VSCode mới trên một dự án node.js. Tôi đang cố định cấu hình tiểu sử "Khởi chạy" của tôi để gỡ lỗi bằng cách chỉnh sửa tệp launch.json. Tôi cần phải thiết lập một chuỗi kết nối như là một biến môi trường. Theo các chú thích trong tập tin launch.json:Làm cách nào để thêm các biến môi trường vào launch.json trong VSCode

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

Tôi đã thử thêm biến môi trường của tôi như vậy:

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

Điều này gây ra một lỗi khi tôi cố gắng để khởi động ứng dụng của tôi; "Quá trình OpenDebug đã kết thúc bất ngờ". Tôi chưa tìm thấy bất kỳ tệp nhật ký nào, v.v. có thể giải thích vấn đề là gì.

Tôi biết ứng dụng này hoạt động chính xác khi tôi thiết lập biến môi trường và khởi chạy ứng dụng của mình từ dấu nhắc lệnh chuẩn. Ứng dụng này cũng chạy như mong đợi nếu tôi nhận xét biến của tôi trong tệp launch.json; Tôi chỉ không thể kết nối với cơ sở dữ liệu.

Tôi giả định rằng tôi đang sử dụng định dạng sai trong tệp launch.json, nhưng tôi chưa tìm thấy bất kỳ cách nào để thực hiện công việc này.

Bất kỳ ý tưởng nào?

+0

Visual Studio đang 0.3.0 đã cố định này. –

Trả lời

5

Dường như có sự cố với biến môi trường trên Windows (và có thể trên Linux). Nó hoạt động trên OS X. Chúng tôi đang điều tra. Mong đợi một sửa chữa sớm.

Andre Weinand, Visual Studio Mã

+1

Mã Visual Studio 0.3.0 đã sửa lỗi này. –

+0

có bị hỏng lần nữa trong 0.9.2 trên OSX không? Đặt "env" nhưng chúng không xuất hiện trong quá trình. Đã làm việc trong các phiên bản trước đó, ít nhất là trên Windows. – antfx

+1

Tôi vừa xác minh rằng cài đặt vv env trong VS Code 0.9.2 trên OS X hoạt động. Nếu nó không hoạt động cho bạn, hãy gửi một lỗi với các bước lặp lại ở đây: https://code.visualstudio.com/Issues/List –

2

như khắc phục, bạn có thể thiết lập các biến môi trường khi bắt đầu VSCode, ví dụ, sử dụng này kịch bản PowerShell nhỏ:

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" 

Lưu nó như vscode.ps1 và cuộc gọi từ dòng lệnh, như sau:

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

Tôi đang chuyển thành công chúng bằng cách sử dụng env bất động sản trong 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

Như thế này, theo bạn Hệ điều hành:

 "osx": { 
      "MIMode": "lldb", 
      "environment": [{"name": "DYLD_LIBRATY_PATH", "value": "/Users/x/boost_1_63_0/stage/lib/"}] 
     }, 
Các vấn đề liên quan