无法获取Visual Studio代码以在launch.json中运行我的构建命令

时间:2016-05-04 23:09:01

标签: javascript node.js browserify babeljs visual-studio-code

我有这个命令,我可以在命令提示符下运行就好了,它可以工作:

browserify -u jquery /public/index.js -t babelify -o /public/scripts/bundle.js & node /server.js

我正在尝试将其添加到VS Code中的launch.json program部分,但我一直收到relative paths will no longer be converted to absolute ones等错误。

所以我尝试将其更改为:

"program": "browserify -u jquery ${workspaceRoot}/public/index.js -t babelify -o ${workspaceRoot}/public/scripts/bundle.js & node ${workspaceRoot}/server.js"

我仍然遇到同样的错误。我认为它可能需要浏览器和其他可执行文件的路径,但我不确定。我也尝试向他们添加${workspaceRoot},但没有运气:同样的错误。

2 个答案:

答案 0 :(得分:0)

嗯,我对VS Code非常陌生并且不确定这是否正确,但我发现我可以将编译部分放在一个任务(tasks.json)中并运行它Control+Shift+B

{
  "version": "0.1.0",
  "command": "browserify",
  "isShellCommand": true,
  "suppressTaskName": true,
  "tasks": [
    {
      "taskName": "install",
      "isBuildCommand": true,
      "args": ["--u", "jquery", "${workspaceRoot}/public/index.js", "-t", "babelify", "-o", "${workspaceRoot}/public/scripts/bundle.js"]
    }
  ]
}

然后在launch.json

中手动运行服务器

"program": "${workspaceRoot}/server.js",

似乎工作,但是一步到位就好了。

修改:好的,您可以将"preLaunchTask": "install",添加到launch.json,使其成为一步。好的,解决了!

答案 1 :(得分:0)

Ryan解决方案可能会起作用,只是来到这里指出错误:模板构造(如$ {workspaceRoot}和$ {cwd})不会在"程序"中工作。属性,这就是为什么我们有" args"。