最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - "breakpoint set but not yet bound" error when debugging node.js - Stack Overflow

programmeradmin1浏览0评论

I have configured my Visual studio code to debug nodejs, chrome(vuejs) application using the recipe in the link. I am however getting a "Failed to exec debug script" error when I debug "Meteor All" error in visual studio code. If I add a breakpoint in the server side code I see a "breakpoint set but not yet bound". I am however able to debug client side code correctly. What am I missing?

Launch.json in visual studio code:

{
    "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
        }
    ],
    "pounds": [
        {
            "name": "Meteor: All",
            "configurations": ["Meteor: Node", "Meteor: Chrome"]
        }
    ]
}

log in Visual Studio code:

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 plete 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

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 [email protected]
3 info using [email protected]
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 ]

I have configured my Visual studio code to debug nodejs, chrome(vuejs) application using the recipe in the link. I am however getting a "Failed to exec debug script" error when I debug "Meteor All" error in visual studio code. If I add a breakpoint in the server side code I see a "breakpoint set but not yet bound". I am however able to debug client side code correctly. What am I missing?

Launch.json in visual studio code:

{
    "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
        }
    ],
    "pounds": [
        {
            "name": "Meteor: All",
            "configurations": ["Meteor: Node", "Meteor: Chrome"]
        }
    ]
}

log in Visual Studio code:

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 plete 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

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 [email protected]
3 info using [email protected]
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 ]
Share Improve this question asked Nov 14, 2019 at 14:33 Ajit GoelAjit Goel 4,4189 gold badges67 silver badges120 bronze badges
Add a ment  | 

2 Answers 2

Reset to default 3

I just use --inspect, and it works fine.

I have not had success specifying the port with --inspect-brk=9229

--inspect uses port 9229 anyway

Your config for the server should be like this:

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

The restart option is useful while you are editing code, as it survives server restarts (by re-attaching)

It seems this message shows up if the debugger cannot "reach" the breakpoint's file through the node process the debugger is attached to.

The error message is not well covered in VS Code documentation so it's hard to find out what causes it.

I tested this by adding a file to a project, putting a breakpoint in it but not include/require'ing it anywhere. When you run the debugger (on another file) the breakpoint you just added will be "set but not yet bound". Conversely, if you include/require the new file, the breakpoint will be normal (even if your tests never reach the line the breakpoint is on).

In my case, I inherited a codebase and found out that if your script spawns child processes (e.g. through child_process.execFile), the debugger will not track the code in the child process. Instead, it will show breakpoints as "breakpoint set but not yet bound".

发布评论

评论列表(0)

  1. 暂无评论