如何在Visual Studio Code中为我的Electron应用程序使用$ {workspaceRoot}?

时间:2016-02-10 01:29:42

标签: electron visual-studio-code

我有一个可以在Visual Studio Code中调试的Electron应用程序。升级到版本0.10.8后,它将不再运行 我在launch.json文件中收到以下错误消息:

  

相对路径将不再自动转换为绝对路径。考虑使用$ {workspaceRoot}作为前缀。

     

要使用的运行时可执行文件的绝对路径。默认值是PATH上的运行时可执行文件。

这是我的launch.json文件:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "My First Electron App",
            "type": "node",
            "request": "launch",
            "program": "$(workspaceRoot}/app/main.js", //ERROR
            "stopOnEntry": false,
            "args": [],
            "cwd": "$(workspaceRoot}",
            "runtimeExecutable": "$(workspaceRoot}/node_modules/electron-prebuilt/dist/electron.app/Contents/MacOS/Electron", //ERROR
            "runtimeArgs": [
                "--nolazy"
            ],
            "env": {
                "NODE_ENV": "development"
            },
            "externalConsole": false,
            "sourceMaps": false,
            "outDir": null
        },
        {
            "name": "Attach",
            "type": "node",
            "request": "attach",
            "port": 5858
        }
    ]
}

我得到了两行中提到的绿色波浪线,最后是// ERROR。

我看过这篇文章,但老实说熟悉VS Code足以理解如何实现这一点:https://code.visualstudio.com/Docs/editor/tasks#_variable-substitution

更新
我根据Isidor的建议将"cwd"的值替换为"${workspaceRoot}"。绿色的波浪线消失了。

我更新了其他两行仍然看到的错误消息。

当我点击F5时收到此错误消息:

  

请求'启动&#39 ;:运行时可执行文件' / private / var / git / electron-vs-code / $(workspaceRoot)/node_modules/electron-prebuilt/dist/electron.app/Contents / MacOS / Electron'不存在

2 个答案:

答案 0 :(得分:5)

There is a typo in your json. Change the parenthesis after the String sTmp = start; String eTmp = end; while (!sTmp.equals(eTmp) && i <= start.length()) { sTmp = start.substring(0, start.length() - i); eTmp = end.substring(i, end.length()); i++; } if (sTmp.equals(eTmp)) { result = sTmp; } else { result = ""; } return result; in $ to a curly brace. This should at least fix the warning.

答案 1 :(得分:3)

即使你得到相对路径警告,VSCode仍然会自动转换为相对于0.10.8的绝对路径。要摆脱&#34; cwd&#34;的警告,而不是&#34;。&#34;请输入&#34; $ {workspaceRoot}&#34;。

当您运行尝试调试电子应用时会发生什么,您是否看到其他错误,因为相对于绝对不能是这个的真正原因。如果你命令palette / open developper工具 - &gt;你在控制台看到一些错误吗?