Geddy没有断点

我正在评估node.js的Geddy MVC框架,我看到一个奇怪的问题 – debugging时我的断点没有被打。

我正在使用WebStorm以debugging模式启动node.js。

我不知道如何使用CLI命令在debugging模式下启动Geddy,所以我使用了一个引导文件,如下所示:

 console.log("Starting server...") var geddy = require("geddy/bin/cli") console.log("Server started.") 

我在所有三行设置了一个断点,只有最后一个console.log命中,所以至less我知道断点和debugging工作正常。

Geddy内部require()我的控制器,他们也在几个地方设置了断点。 这些都不会受到影响,但是控制器可以正常工作,并且HTTP请求也可以正常使用。

Geddy中的断点不会有什么原因吗? 还有什么我可以做的吗?

有一个关于如何debugginggeddy的debuggingWikiPage。

我一直无法validation这一点,但我相信这个问题是由于cluster产生新的进程,但debugging器不知道他们的事实。 我还没有find一种方法来将debugging器附加到新的进程,我甚至不知道它们是否可以打开debugging端口启动。

Geddy使用cluster所以它inheritance了这个问题。

这个线程提到了一个可能的解决scheme:( 如何在运行GeddyJS时启用–debug for node.js ),但这并没有帮助我。

Geddy目前不支持debugging,但我们希望将其作为一项function添加。

要回答专门针对Jetbrains WebStorm或IntelliJ(使用Node.js插件)的问题,请执行以下操作:debugging:

简而言之,就像在Heroku或Nodejitsu上部署应用一样。

的package.json

 { "name": "geddy_todo", "version": "0.0.1", "dependencies": { "geddy": "0.6.x" }, "engines": { "node": "0.8.x", "npm": "1.1.x" } } 

接下来你有两个select

选项1.创build一个运行geddy的app.js。

app.js

 var geddy = require('geddy'); geddy.start({ environment: process.env.GEDDY_ENVIRONMENT || 'production' }); 

在WebStorm / IntelliJ中,在Node.js应用程序的运行/debuggingconfiguration中,确保添加环境variablesGEDDY_ENVIRONMENT,如果要运行testing,请将其设置为“development”或“test”。

选项2直接调用geddy客户端

@MiguelMadero在评论中提到了这个想法。 设置你的WS / IJ运行以下

 path/to/geddy/bin/cli.js