Debugging 使用VSCode调试自定义Yeoman生成器

Debugging 使用VSCode调试自定义Yeoman生成器,debugging,yeoman,visual-studio-code,yeoman-generator,Debugging,Yeoman,Visual Studio Code,Yeoman Generator,让VSCode调试我正在开发的自定义Yeoman生成器真是太麻烦了 Yeoman文档说要像这样执行生成器: node --debug `which yo` <generator> [arguments] { // Name of configuration; appears in the launch configuration drop down menu. "name": "Launch yeoman generator-nodehttps", // T

让VSCode调试我正在开发的自定义Yeoman生成器真是太麻烦了

Yeoman文档说要像这样执行生成器:

node --debug `which yo` <generator> [arguments]
{
    // Name of configuration; appears in the launch configuration drop down menu.
    "name": "Launch yeoman generator-nodehttps",
    // Type of configuration. Possible values: "node", "mono".
    "type": "node",
    // Workspace relative or absolute path to the program.
    "program": "/Users/ac/.npm-packages/lib/node_modules/yo/lib/cli.js",
    // Automatically stop program after launch.
    "stopOnEntry": false,
    // Command line arguments passed to the program.
    "args": ["nodehttps"],
    // Workspace relative or absolute path to the working directory of the program being debugged. Default is the current workspace.
    "cwd": ".",
    // Workspace relative or absolute path to the runtime executable to be used. Default is the runtime executable on the PATH.
    "runtimeExecutable": null,
    // Environment variables passed to the program.
    "env": { }
}
我的程序属性不同的原因是,将
which yo
(单引号或不引号)放入VSCode中会产生一个错误,“which yo不存在”

它成功地启动了一个新的终端窗口&我可以与生成器交互,但是我的断点没有被击中,也没有在VSCode调用堆栈/变量窗口中看到任何显示……但是VSCode似乎附加到进程(编辑器底部的橙色条)


但无论我如何调整,我似乎都无法让VSCode调试我的生成器…想法?

运行“which yo”会导致“/usr/local/bin/yo”。我建议将其用于“program”属性。此外,将“stopOnEntry”设置为true,以便您可以看到发生了什么。对于我来说,使用VSCode调试yo可以使用此启动配置:

{
    "name": "yo",
    "type": "node",
    "program": "/usr/local/bin/yo",
    "args": ["nodehttps"],
    "stopOnEntry": true
}

运行“which yo”会导致“/usr/local/bin/yo”。我建议将其用于“program”属性。此外,将“stopOnEntry”设置为true,以便您可以看到发生了什么。对于我来说,使用VSCode调试yo与此启动配置一起工作:

{
    "name": "yo",
    "type": "node",
    "program": "/usr/local/bin/yo",
    "args": ["nodehttps"],
    "stopOnEntry": true
}

完美…这对我也有用。我有一个不同的路径到Yeoman,因为我有NPM全局包保存到我的配置文件文件夹,以避免每次使用全局包时出现sudo完美…这对我也有用。我有一个不同的路径到Yeoman,因为我有NPM全局包保存到我的配置文件文件夹,以避免每次使用全局p时出现sudo包装