【问题标题】:WebStorm debugging not stopping on breakpointsWebStorm 调试不会在断点处停止
【发布时间】:2018-08-11 03:10:57
【问题描述】:

我的应用程序是一个 node.js 应用程序,我可以在工作目录中使用:npm test 通过命令行运行它。在 WebStorm 中,我创建了一个如下所示的新配置:

Node interpreter: /usr/local/bin/npm
Node parameters: test
Working directory ~/dev/project

当我点击运行按钮时,我得到了正确的输出:

/usr/loca/bin/npm test

> app@1.0.0 test ~/dev/project

something else
Process finished with exit code 0

但由于我设置了断点,它应该在断点处停止,而不是到达 Process 完成部分。我将我的代码设置得非常简单,以便我可以测试断点,所以它看起来像这样:

"use strict";

let foo = false; (breakpoint)
let bar = true;

if (foo === bar) { (breakpoint)
    console.log('something');
} else {
    console.log('something else'); (breakpoint)
}
process.exit(1);

我也尝试通过命令行来完成这项工作。在我的站点设置中,我将内置服务器设置为端口 12345。可以接受外部连接,并允许未签名的请求。

当我通过命令行运行它时,我使用:

npm --debug-brk=12345 test

我得到相同的结果:它一直运行到出口点,而没有在断点处停止。

任何想法我需要做些什么才能让它工作?

【问题讨论】:

  • 你的测试脚本在你的 package.json 中是什么样子的?

标签: node.js npm webstorm javascript-debugger npm-scripts


【解决方案1】:

/usr/local/bin/npm 绝对不是 Node 解释器,它是 NPM 包管理器,它本身就是一个 Node.js 应用程序(即它与 Node.js 解释器一起运行)。而test 是 npm 脚本的名称,而不是 Node.js 参数。

如果您想调试通过npm test 运行的 .js 文件,您需要修改您的 npm 脚本以包含调试选项,然后使用NPM 运行配置进行调试。或者,只需创建一个Node.js 配置,在那里设置 Node.js 可执行文件的有效路径(/usr/bin/node 或您系统上的任何内容),然后将您的 .js 文件指定为 JavaScript 文件:强>。请参阅https://blog.jetbrains.com/webstorm/2017/09/debugging-node-js-apps-in-webstorm 了解更多信息

【讨论】:

    猜你喜欢
    • 2018-01-11
    • 2023-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-30
    • 2010-11-25
    • 2011-07-14
    • 2013-09-27
    相关资源
    最近更新 更多