Javascript &引用;断点已设置但尚未绑定";调试node.js时出错

Javascript &引用;断点已设置但尚未绑定";调试node.js时出错,javascript,node.js,debugging,meteor,visual-studio-code,Javascript,Node.js,Debugging,Meteor,Visual Studio Code,我已将Visual studio代码配置为使用中的配方调试nodejs、chrome(vuejs)应用程序。然而,当我调试VisualStudio代码中的“Meteor All”错误时,我得到了一个“未能执行调试脚本”错误。 如果我在服务器端代码中添加一个断点,我会看到一个“断点集但尚未绑定”。但是,我能够正确调试客户端代码。 我错过了什么 visual studio代码中的Launch.json: { "version": "0.2.0", "configurations":

我已将Visual studio代码配置为使用中的配方调试nodejs、chrome(vuejs)应用程序。然而,当我调试VisualStudio代码中的“Meteor All”错误时,我得到了一个“未能执行调试脚本”错误。 如果我在服务器端代码中添加一个断点,我会看到一个“断点集但尚未绑定”。但是,我能够正确调试客户端代码。 我错过了什么

visual studio代码中的Launch.json:

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "chrome",
            "request": "launch",
            "name": "Meteor: Chrome",
            "url": "http://localhost:3000",
            "webRoot": "${workspaceFolder}",
            "outputCapture": "std"
        },
        {
            "type": "node",
            "request": "launch",
            "name": "Meteor: Node",
            "runtimeExecutable": "npm",
            "runtimeArgs": ["run", "debug"],
            "outputCapture": "std",
            "port": 9229,
            "timeout": 30000
        }
    ],
    "compounds": [
        {
            "name": "Meteor: All",
            "configurations": ["Meteor: Node", "Meteor: Chrome"]
        }
    ]
}
C:\Program Files\nodejs\npm.cmd run debug 

> vue-meteor-demo@ debug c:\temp\vuemeteor2
> meteor run meteor --settings settings.json --inspect-brk=9229

Unknown run target: meteor
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! vue-meteor-demo@ debug: `meteor run meteor --settings settings.json --inspect-brk=9229`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the vue-meteor-demo@ debug script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\AjitGoel\AppData\Roaming\npm-cache\_logs\2019-11-14T14_17_23_502Z-debug.log
0 info it worked if it ends with ok
1 verbose cli [ 'C:\\Program Files\\nodejs\\node.exe',
1 verbose cli   'C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
1 verbose cli   'run',
1 verbose cli   'debug' ]
2 info using npm@6.4.1
3 info using node@v10.15.0
4 verbose run-script [ 'predebug', 'debug', 'postdebug' ]
5 info lifecycle vue-meteor-demo@~predebug: vue-meteor-demo@
6 info lifecycle vue-meteor-demo@~debug: vue-meteor-demo@
7 verbose lifecycle vue-meteor-demo@~debug: unsafe-perm in lifecycle true
8 verbose lifecycle vue-meteor-demo@~debug: PATH: <Path>
9 verbose lifecycle vue-meteor-demo@~debug: CWD: c:\temp\vuemeteor2
10 silly lifecycle vue-meteor-demo@~debug: Args: [ '/d /s /c',
10 silly lifecycle   'meteor run meteor --settings settings.json --inspect-brk=9229' ]
11 silly lifecycle vue-meteor-demo@~debug: Returned: code: 1  signal: null
12 info lifecycle vue-meteor-demo@~debug: Failed to exec debug script
13 verbose stack Error: vue-meteor-demo@ debug: `meteor run meteor --settings settings.json --inspect-brk=9229`
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter.<anonymous> (C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\index.js:301:16)
13 verbose stack     at EventEmitter.emit (events.js:182:13)
13 verbose stack     at ChildProcess.<anonymous> (C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\lib\spawn.js:55:14)
13 verbose stack     at ChildProcess.emit (events.js:182:13)
13 verbose stack     at maybeClose (internal/child_process.js:962:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:251:5)
14 verbose pkgid vue-meteor-demo@
15 verbose cwd c:\temp\vuemeteor2
16 verbose Windows_NT 10.0.18362
17 verbose argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "run" "debug"
18 verbose node v10.15.0
19 verbose npm  v6.4.1
20 error code ELIFECYCLE
21 error errno 1
22 error vue-meteor-demo@ debug: `meteor run meteor --settings settings.json --inspect-brk=9229`
22 error Exit status 1
23 error Failed at the vue-meteor-demo@ debug script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]
登录Visual Studio代码:

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "chrome",
            "request": "launch",
            "name": "Meteor: Chrome",
            "url": "http://localhost:3000",
            "webRoot": "${workspaceFolder}",
            "outputCapture": "std"
        },
        {
            "type": "node",
            "request": "launch",
            "name": "Meteor: Node",
            "runtimeExecutable": "npm",
            "runtimeArgs": ["run", "debug"],
            "outputCapture": "std",
            "port": 9229,
            "timeout": 30000
        }
    ],
    "compounds": [
        {
            "name": "Meteor: All",
            "configurations": ["Meteor: Node", "Meteor: Chrome"]
        }
    ]
}
C:\Program Files\nodejs\npm.cmd run debug 

> vue-meteor-demo@ debug c:\temp\vuemeteor2
> meteor run meteor --settings settings.json --inspect-brk=9229

Unknown run target: meteor
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! vue-meteor-demo@ debug: `meteor run meteor --settings settings.json --inspect-brk=9229`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the vue-meteor-demo@ debug script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\AjitGoel\AppData\Roaming\npm-cache\_logs\2019-11-14T14_17_23_502Z-debug.log
0 info it worked if it ends with ok
1 verbose cli [ 'C:\\Program Files\\nodejs\\node.exe',
1 verbose cli   'C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
1 verbose cli   'run',
1 verbose cli   'debug' ]
2 info using npm@6.4.1
3 info using node@v10.15.0
4 verbose run-script [ 'predebug', 'debug', 'postdebug' ]
5 info lifecycle vue-meteor-demo@~predebug: vue-meteor-demo@
6 info lifecycle vue-meteor-demo@~debug: vue-meteor-demo@
7 verbose lifecycle vue-meteor-demo@~debug: unsafe-perm in lifecycle true
8 verbose lifecycle vue-meteor-demo@~debug: PATH: <Path>
9 verbose lifecycle vue-meteor-demo@~debug: CWD: c:\temp\vuemeteor2
10 silly lifecycle vue-meteor-demo@~debug: Args: [ '/d /s /c',
10 silly lifecycle   'meteor run meteor --settings settings.json --inspect-brk=9229' ]
11 silly lifecycle vue-meteor-demo@~debug: Returned: code: 1  signal: null
12 info lifecycle vue-meteor-demo@~debug: Failed to exec debug script
13 verbose stack Error: vue-meteor-demo@ debug: `meteor run meteor --settings settings.json --inspect-brk=9229`
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter.<anonymous> (C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\index.js:301:16)
13 verbose stack     at EventEmitter.emit (events.js:182:13)
13 verbose stack     at ChildProcess.<anonymous> (C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\lib\spawn.js:55:14)
13 verbose stack     at ChildProcess.emit (events.js:182:13)
13 verbose stack     at maybeClose (internal/child_process.js:962:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:251:5)
14 verbose pkgid vue-meteor-demo@
15 verbose cwd c:\temp\vuemeteor2
16 verbose Windows_NT 10.0.18362
17 verbose argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "run" "debug"
18 verbose node v10.15.0
19 verbose npm  v6.4.1
20 error code ELIFECYCLE
21 error errno 1
22 error vue-meteor-demo@ debug: `meteor run meteor --settings settings.json --inspect-brk=9229`
22 error Exit status 1
23 error Failed at the vue-meteor-demo@ debug script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]
调试日志:

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "chrome",
            "request": "launch",
            "name": "Meteor: Chrome",
            "url": "http://localhost:3000",
            "webRoot": "${workspaceFolder}",
            "outputCapture": "std"
        },
        {
            "type": "node",
            "request": "launch",
            "name": "Meteor: Node",
            "runtimeExecutable": "npm",
            "runtimeArgs": ["run", "debug"],
            "outputCapture": "std",
            "port": 9229,
            "timeout": 30000
        }
    ],
    "compounds": [
        {
            "name": "Meteor: All",
            "configurations": ["Meteor: Node", "Meteor: Chrome"]
        }
    ]
}
C:\Program Files\nodejs\npm.cmd run debug 

> vue-meteor-demo@ debug c:\temp\vuemeteor2
> meteor run meteor --settings settings.json --inspect-brk=9229

Unknown run target: meteor
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! vue-meteor-demo@ debug: `meteor run meteor --settings settings.json --inspect-brk=9229`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the vue-meteor-demo@ debug script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\AjitGoel\AppData\Roaming\npm-cache\_logs\2019-11-14T14_17_23_502Z-debug.log
0 info it worked if it ends with ok
1 verbose cli [ 'C:\\Program Files\\nodejs\\node.exe',
1 verbose cli   'C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
1 verbose cli   'run',
1 verbose cli   'debug' ]
2 info using npm@6.4.1
3 info using node@v10.15.0
4 verbose run-script [ 'predebug', 'debug', 'postdebug' ]
5 info lifecycle vue-meteor-demo@~predebug: vue-meteor-demo@
6 info lifecycle vue-meteor-demo@~debug: vue-meteor-demo@
7 verbose lifecycle vue-meteor-demo@~debug: unsafe-perm in lifecycle true
8 verbose lifecycle vue-meteor-demo@~debug: PATH: <Path>
9 verbose lifecycle vue-meteor-demo@~debug: CWD: c:\temp\vuemeteor2
10 silly lifecycle vue-meteor-demo@~debug: Args: [ '/d /s /c',
10 silly lifecycle   'meteor run meteor --settings settings.json --inspect-brk=9229' ]
11 silly lifecycle vue-meteor-demo@~debug: Returned: code: 1  signal: null
12 info lifecycle vue-meteor-demo@~debug: Failed to exec debug script
13 verbose stack Error: vue-meteor-demo@ debug: `meteor run meteor --settings settings.json --inspect-brk=9229`
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter.<anonymous> (C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\index.js:301:16)
13 verbose stack     at EventEmitter.emit (events.js:182:13)
13 verbose stack     at ChildProcess.<anonymous> (C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\lib\spawn.js:55:14)
13 verbose stack     at ChildProcess.emit (events.js:182:13)
13 verbose stack     at maybeClose (internal/child_process.js:962:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:251:5)
14 verbose pkgid vue-meteor-demo@
15 verbose cwd c:\temp\vuemeteor2
16 verbose Windows_NT 10.0.18362
17 verbose argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "run" "debug"
18 verbose node v10.15.0
19 verbose npm  v6.4.1
20 error code ELIFECYCLE
21 error errno 1
22 error vue-meteor-demo@ debug: `meteor run meteor --settings settings.json --inspect-brk=9229`
22 error Exit status 1
23 error Failed at the vue-meteor-demo@ debug script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]
0信息如果它以ok结尾,它就工作了
1详细cli['C:\\Program Files\\nodejs\\node.exe',
1 verbose cli'C:\\Program Files\\nodejs\\node\u modules\\npm\\bin\\npm cli.js',
1详细cli“运行”,
1详细cli“调试”]
2信息使用npm@6.4.1
3信息使用node@v10.15.0
4详细的运行脚本['predebug','debug','postdebug']
5信息生命周期vue流星演示@~predebug:vue流星演示@
6信息生命周期vue meteor演示@~调试:vue meteor演示@
7详细的生命周期vue meteor demo@~debug:生命周期中的不安全perm为true
8详细生命周期vue meteor演示@~debug:路径:
9详细的生命周期vue meteor demo@~debug:CWD:c:\temp\vuemeteor2
10.vue meteor演示@~debug:Args:['/d/s/c',
10“meteor run meteor--settings settings.json--inspect brk=9229”]
11 vue meteor demo@~debug:返回:代码:1信号:null
12信息生命周期vue meteor demo@~debug:无法执行调试脚本
13详细堆栈错误:vue meteor demo@debug:`meteor运行meteor--settings settings.json--inspect brk=9229`
13详细堆栈退出状态1
13 EventEmitter上的详细堆栈。(C:\Program Files\nodejs\node\u modules\npm\node\u modules\npm lifecycle\index.js:301:16)
13 EventEmitter.emit上的详细堆栈(events.js:182:13)
13子进程上的详细堆栈。(C:\Program Files\nodejs\node\U modules\npm\node\U modules\npm lifecycle\lib\spawn.js:55:14)
13 ChildProcess.emit上的详细堆栈(events.js:182:13)
13 maybeClose的详细堆栈(internal/child_process.js:962:16)
13 Process.ChildProcess.\u handle.onexit处的详细堆栈(internal/child\u Process.js:251:5)
14详细的pkgid vue流星演示@
15详细的cwd c:\temp\vuemeteor2
16详细窗口\u NT 10.0.18362
17详细argv“C:\\Program Files\\nodejs\\node.exe”“C:\\Program Files\\nodejs\\node\U模块\\npm\\bin\\npm cli.js”“运行”“调试”
18详细节点v10.15.0
19详细的npm v6.4.1
20错误代码ELIFECYCLE
21错误1
22错误vue meteor demo@debug:`meteor run meteor--settings settings.json--inspect brk=9229`
22错误退出状态1
23 vue meteor demo@debug脚本出现错误失败。
23错误这可能不是npm的问题。上面可能还有其他日志输出。
24详细退出[1,true]
我只使用了
--inspect
,效果很好

使用
--inspect brk=9229

--inspect
仍然使用端口9229

服务器的配置应如下所示:

{
  "type": "node",
  "request": "attach",
  "name": "server",
  "restart": true,
  "port": 9229
},

当您编辑代码时,
restart
选项很有用,因为它在服务器重新启动(通过重新连接)后仍然有效。

如果调试器无法通过调试器所连接的节点进程“访问”断点文件,则会显示此消息

VS代码文档中没有很好地涵盖该错误消息,因此很难找出其原因

我通过向项目中添加一个文件来测试这一点,在其中放置一个断点,但不将其放置在任何地方。当您运行调试器(在另一个文件上)时,您刚才添加的断点将“设置但尚未绑定”。 相反,如果
包含
/
需要
新文件,断点将是正常的(即使测试从未到达断点所在的行)


在我的例子中,我继承了一个代码库,并发现如果脚本生成子进程(例如通过),调试器将不会跟踪子进程中的代码。相反,它会将断点显示为“断点已设置但尚未绑定”

谢谢@Mikkhel,但改为--inspect没有帮助:(您需要
附加
而不是
启动
-这就是问题所在(答案更新为显示配置)我收到一个“您的应用程序正在崩溃。等待文件更改”错误。StackTrace:Started proxy。[HMR]开发服务器在端口3003上侦听。=>Started MongoDB.W20191120-21:06:55.498(-8)?(STDERR)在127.0.0.1:9229启动inspector失败:地址已在使用=>退出,代码为:12 W20191120-21:07:04.251(-8)?(STDERR)在127.0.0.1:9229上启动inspector失败:地址已在使用=>退出,代码为:12=>您的应用程序正在崩溃。等待文件更改。
9229失败:地址已在使用
意味着您已经有另一个进程在使用该端口-meteor的另一个副本?当我尝试启动chrome并连接nodejs时,我得到一个浏览器中的“无法访问此网站”错误消息。如果关闭浏览器,我会收到以下错误消息:“无法连接到运行时进程,10000毫秒后超时-(原因:无法连接到目标:connect EconRefuse127.0.0.1:9229)”。但是,如果我运行npm run start命令,应用程序工作正常。请参见此处: