Sho*_*v3_ 11 javascript node.js docker babeljs visual-studio-code
最小可重现仓库: https://github.com/ShocKwav3/babel-node-basic
我正在尝试使用 vscode 为 Nodejs 应用程序设置调试器。我正在运行该应用程序babel-node。无论我尝试什么,断点都显示未绑定。我正在使用此命令运行应用程序
nodemon --exec './node_modules/.bin/babel-node --inspect=0.0.0.0 src/bin/www'
Dockerfile:
FROM node:12
WORKDIR /usr/src/app/home_automation_server
COPY package*.json ./
RUN yarn install
COPY . .
Run Code Online (Sandbox Code Playgroud)
撰写配置:
server:
image: home_automation_server
volumes:
- .:/usr/src/app/home_automation_server
working_dir: /usr/src/app/home_automation_server
ports:
- 3000:3000
- 9229:9229
depends_on:
- db
- redis
networks:
- servernet
env_file:
- ./server.env
- ./database.env
command: ["sh", "entrypoint.sh", "run"]
tty: true
Run Code Online (Sandbox Code Playgroud)
.babelrc:
{
"presets": [
[
"@babel/preset-env",{
"targets": {
"node": "current"
}
}
]
],
"plugins": [
"@babel/plugin-proposal-class-properties",
["module-resolver", {
"root": ["./"],
"alias": {
"projectRoot": "./",
"src": "./src"
}
}]
],
"sourceMaps": "inline"
}
Run Code Online (Sandbox Code Playgroud)
启动.json:
{
"type": "node",
"request": "attach",
"name": "Debug: HA dev server",
"port": 9229,
"restart": true,
"trace": true,
"address": "localhost",
"localRoot": "${workspaceFolder}/src/bin",
"remoteRoot": "/usr/src/app/home_automation_server/src/bin",
"protocol": "inspector",
"sourceMaps": true
}
Run Code Online (Sandbox Code Playgroud)
当我连接调试器时,它会连接如果我使用inspect-brk应用程序在第一行停止,当调试器连接时我可以单步执行。但是当我设置断点时它不起作用并且变灰。说“未绑定断点”我做错了什么?我已经在这方面工作了很长时间,并尝试了通过谷歌搜索可以找到的几乎所有内容。
我对未绑定断点也有类似的问题。我的问题是 launch.json 中的字段不正确:
"localRoot": "${workspaceFolder}/server",
Run Code Online (Sandbox Code Playgroud)
我忘记包含 /server。我的 launch.json 文件回到了相对于我试图在标记为 /server 的目录中调试的 Nodejs 应用程序的一个目录。
小智 0
我遇到了类似的问题,问题出在 launch.json,我在属性中
"program": "app.ts",我更改为"program": "$ {file}"**. 我只能测试一下app.ts。在其他文件中,断点设置为“未绑定”这是我的 launch.json
{
"version": "0.2.0",
"configurations": [
{
"type": "pwa-node",
"request": "launch",
"name": "Launch Program",
"skipFiles": [
"<node_internals>/**"
],
"program": "${file}",
"sourceMaps": true,
"preLaunchTask": "tsc: build - tsconfig.json",
"outFiles": [
"${workspaceFolder}/dist/**/*.js"
]
}
]
}
Run Code Online (Sandbox Code Playgroud)