找不到模块{applicationPath}

时间:2018-10-18 08:58:59

标签: javascript node.js visual-studio-code electron

我正在尝试从Visual Studio代码以调试模式运行应用程序。当我单击“调试”时,会发生以下错误:

A JavaScript error occurred in the main process

Uncaught Exception:
Error: Cannot find module 'C:\electron2\electron_app\--inspect-brk=15965'
    at Module._resolveFilename (internal/modules/cjs/loader.js:602:15)
    at Function.Module._resolveFilename (C:\electron2\electron_app\node_modules\electron\dist\resources\electron.asar\common\reset-search-paths.js:35:12)
    at Function.Module._load (internal/modules/cjs/loader.js:528:25)
    at Module.require (internal/modules/cjs/loader.js:658:17)
    at init (C:\electron2\electron_app\node_modules\electron-compile\lib\config-parser.js:294:16)
    at main (C:\electron2\electron_app\node_modules\electron-prebuilt-compile\lib\es6-init.js:58:29)
    at Object.<anonymous> (C:\electron2\electron_app\node_modules\electron-prebuilt-compile\lib\es6-init.js:61:1)
    at Object.<anonymous> (C:\electron2\electron_app\node_modules\electron-prebuilt-compile\lib\es6-init.js:63:3)
    at Module._compile (internal/modules/cjs/loader.js:711:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:722:10)

我的调试配置如下

{
    "version": "0.2.0",
    "configurations": [
      {
        "name": "Debug",
        "type": "node",
        "request": "launch",
        "cwd": "${workspaceRoot}",
        "runtimeExecutable": "${workspaceRoot}/node_modules/.bin/electron",
        "windows": {
          "runtimeExecutable": "${workspaceRoot}/node_modules/.bin/electron.cmd"
        },
        "args" : ["."]
      }
    ]
  }

还发现了另一个错误:

No such module: atom_browser_features

以前从未听说过这样的模块。

以前曾经工作过,但是突然间它停止工作了。任何人都知道可能是什么问题吗?

2 个答案:

答案 0 :(得分:1)

您可能会遇到问题,因为--inspect-brk=15965被解释为“主要”脚本。

假定生成的命令行类似于noseratio的命令行:

C:/test/node_modules/.bin/electron.cmd --remote-debugging-port=9223 . --inspect-brk=47365

您可以看到--inspect-brk在声明的args之后,但是,节点参数必须在“ main”脚本之前声明。您可以尝试升级到electron@3.0.8,以查看问题是否自行解决。另外,您可以尝试像在electron-quick-start项目中所做的那样对入口点更加明确。

{
    "name": "Debug Main Process",
    "type": "node",
    "request": "launch",
    "cwd": "${workspaceRoot}",
    "runtimeExecutable": "${workspaceRoot}/node_modules/.bin/electron",
    "windows": {
      "runtimeExecutable": "${workspaceRoot}/node_modules/.bin/electron.cmd"
    },
    "program": "${workspaceRoot}/main.js",
    "protocol": "inspector"
}

答案 1 :(得分:0)

在运行时可执行文件和Windows:{runtimeexecutable}中,使用“ {workspaceRoot} \\ node_modules \ .bin \\ electron”代替“ $ {workspaceRoot} /node_modules/.bin/electron”,就像您在使用Windows一样。