【发布时间】:2021-12-16 08:16:32
【问题描述】:
我在尝试在 VSCode 中调试 Node.js 应用时看到一些奇怪的行为。
- 当我选择要运行和调试的配置时,它会在集成终端的命令行中生成一些代码。
- 但是,代码被截断,因此命令不完整。剪辑的数量似乎与我在
~/.zshrc文件中导出的路径有关。 - 当我删除
.zshrc文件中的所有 PATH 导出时,它似乎生成了正确的命令,但是,它不会自动运行 - 它会等待,未完成,直到我单击该行并按 Enter 键。然后运行。 - 在我第一次执行此操作后,它会正确运行,而无需用户(我)单击并回车)
- 当我这样做时,它似乎运行了两次 - 它两次输出相同的文本,第一次以
%终止,然后在生成相同文本的位置开始新行。
生成的脚本:
/bin:/Users/USERNAME/.nvm/versions/node/v14.17.1/bin:/Users/USERNAME/.pyenv/shims:/Users/USERNAME/.pyenv/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/share/dotnet:~/.dotnet/tools:/Library/Apple/usr/bin:/Library/Frameworks/Mono.framework/Versions/Current/Commands' 'NODE_OPTIONS=--require "/Applications/Visual Studio Code.app/Contents/Resources/app/extensions/ms-vscode.js-debug/src/bootloader.bundle.js" --inspect-publish-uid=http' 'VSCODE_INSPECTOR_OPTIONS={"inspectorIpc":"/var/folders/tv/3png1fgn2071ql5yd6n2rjgw0000gn/T/node-cdp.3142-1.sock","deferredMode":false,"waitForDebugger":"","execPath":"/Users/USERNAME/.nvm/versions/node/v14.17.1/bin/node","onlyEntrypoint":false,"autoAttachMode":"always","fileCallback":"/var/folders/tv/3png1fgn2071ql5yd6n2rjgw0000gn/T/node-debug-callback-0ecc30434e46d30d"}' /Users/USERNAME/FOLDER/PROJECT/REPO/node_modules/nodemon/bin/nodemon.js --nolazy .
(我已经重命名了 CAPS 中列出的项目)
请注意,这发生在使用不同版本 Node 的不同存储库中,而不仅仅是命令行输出列出的那个(即:v14.17.1)
在尝试进行故障排除时,我已经从我的.zshrc 文件中完全删除或卸载(并重新安装)了 VSCode、Node、NVM、PATH 导出,但它仍在发生。不清楚从这里去哪里。
编辑:
这看起来与 VSCode 调试器上的帖子未启动或附加有关,但尚未找到任何解决问题的方法。
edit2:
我可以发誓我的终端输入的最大限制(MacOS 11.6,zsh)正在运行。我知道这是由操作系统决定的,而不是您使用的外壳。
- https://serverfault.com/questions/69430/what-is-the-maximum-length-of-a-command-line-in-mac-os-x
- https://serverfault.com/questions/69430/what-is-the-maximum-length-of-a-command-line-in-mac-os-x
我的ARG_MAX 看起来很大:
> ~ getconf ARG_MAX
1048576
【问题讨论】:
标签: node.js macos visual-studio-code vscode-debugger