Visual Studio代码-调试生成的进程

沙伯坦

项目设置是一个基本的快速应用程序,由express-generator生成。

可以在GitHub上找到vscode-debugging-node项目

请参考Visual Studio代码中的截屏视频-调试节点应用程序


Gruntfile.js项目的根,管理开发过程。的目的Gruntfile.js很简单,它启动服务器并监视任何文件更改。在检测到所需文件中的更改后,它将重新启动服务器(杀死现有进程并启动一个新进程)。

用于启动/重新启动服务器Gruntfile.js用途./task/server.js

Gruntfile.js以这种方式开发的,后来,它将系统中的Cookie管理,以提供经验记录下来。

在执行$ grunt start任务时,如果传递env名为变量NODE_INSPECTOR=*,则服务器将在--debugmode下启动--debug模式下执行grunt任务以及node-inspector并行运行时,我可以使用Chrome调试整个应用程序。


参照调试在Visual Studio代码,我试图通过更新来达到同样的.settings/launch.json,用"program": "/usr/local/bin/grunt""args": ["start"]"env": {"NODE_INSPECTOR":"*"}

我可以发现调试器仅附加到./task/server.js整个应用程序上,而是附加到整个应用程序上。我怀疑,这可能是由于spawned服务器所致


是否可以在Visual Studio代码中调试这种情况如果是,知道详细信息将对您有很大帮助。

索菲亚·奈德

您的疑问是正确的,您正在配置Visual Studio Code,使其附加到启动服务器而不是服务器本身的启动任务。

您可以通过以下两种方法来调试此命令:

  1. NODE_INSPECTOR=* grunt start从终端执行服务器启动后,使用中提供的相同附加配置将运行中的服务器附加到调试器调试器视图中,从配置文件下拉列表中选择附加,然后启动调试器(绿色►播放按钮)。launch.json

更新-Sarbbotam录制了成功附加到他的node.js应用的截屏视频,您可以在这里找到Visual Studio代码-将Node应用附加到调试器

  1. 将VSCode配置为直接运行服务器,因为您无需执行艰巨的任务来监听更改并重新启动服务器。为此,将program选项更改"bin/www"

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章