2

运行 Windows 8.1 并且我的环境运行良好,但我无法在 --debug 中启动节点,以便节点检查器可以连接。

我有一个带有 grunt-concurrent 的 Gruntfile 设置,它可以让我打开 grunt-devtools,node-inspector 然后看就好了,但我无法找出一个可行的语法来让它在调试中与 node 一起运行。以下是我期望的工作,也是我尝试时遇到的错误。请注意,有一条消息表明调试服务器正在侦听,但是有些东西从那里分崩离析并且失败了,所以这对我没有好处。

C:\PROJECTS\bManWebService_Hapi>node --debug C:\Users\rainabba\AppData\Roaming\npm\grunt server

debugger listening on port 5858

C:\Users\rainabba\AppData\Roaming\npm\grunt:2
basedir=`dirname "$0"`
        ^
SyntaxError: Unexpected token ILLEGAL
    at Module._compile (module.js:437:25)
    at Object.Module._extensions..js (module.js:467:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.runMain (module.js:492:10)
    at process.startup.processNextTick.process._tickCallback (node.js:244:9)
4

2 回答 2

3

看起来文件 C:\Users\rainabba\AppData\Roaming\npm\grunt 不是 JS 文件,而是 bash shell 脚本。如果您需要 Windows 兼容版本,请在同一文件夹中查找 grunt.cmd。

如果您发现 grunt.cmd 并且事件 - 以node grunt.cmd不正确的方式启动它。很可能grunt.cmd会启动节点,因此您需要以某种方式将 --debug 参数传递给节点,由 grunt.cmd 调用,或者只是像 grunt.cmd 运行它一样运行节点。

于 2013-12-15T01:01:27.790 回答
1

tl; tr;

节点 --debug-brk c:\Users\rainabba\AppData\Roaming\npm\node_modules\grunt-cli\bin\grunt 任务名

你必须使用这个可执行文件

  • c:\Users\rainabba\AppData\Roaming\npm\node_modules\grunt-cli\bin\grunt

而不是这个

  • c:\Users\rainabba\AppData\Roaming\npm\grunt 服务器
于 2014-10-25T13:55:14.373 回答