2

我正在使用新安装的 eclipse 实例使用 node.js 和 eclipse 使用 nodeeclipse ( here )。我有过 eclipse 的经验,但这是为此目的的新安装。我已经使用 Node.js 有一段时间了,但我想看看 eclipse 可以增加我的头痛(或者希望减轻(一些?)它们!)。Node --version v0.10.22 Eclipse 版本是版本:Kepler Service Release 2 Build id:20140224-0627。

好的,所以我使用 New > Other.. > Nodeclipse > Node.js Express Project 创建了一个新项目。给它命名为 Hello World 并采用默认值。我更新了 index.js 文件以添加一些有趣的东西来添加断点:

exports.index = function(req, res){
  res.render('index', { title: 'Express' });
  console.log( "here" );
  var i=45;
  i = i+3;
  console.log( i );
};

我在 i = i+3 行上放了一个断点。我试过运行,运行方式>节点应用程序,当我从浏览器点击“mylclhost:3000”时,它并没有在我的断点处停止。如果我执行 Debug As > Nodejs Application,它会显示一个带有蓝色 chrome favicon 的新面板(类似于这个家伙所说的情况),点击 mylclhost:3000 会导致 404,所以我点击 F8 继续并且 mylclhost:3000 工作正如预期的那样,但没有断点命中。

这是我在 Project Explorer > 右键单击​​ app.js > Debug As > Node Application: node --debug-brk=5858 C:\Users\person\AppData\Roaming\npm\node_modules\nodemon\bin\nodemon 之后的 Nodeclipse 控制台输出.js C:\Users\person\workspace\HelloWorld\app.js --tea-pot-mode

这是我在第一个断点后按 F8 继续后的正常控制台输出(请注意,默认情况下,Nodeclipse 从第一行进入逐步调试模式):

debugger listening on port 5858
21 Mar 09:58:38 - [33m[nodemon] v1.0.15[39m
21 Mar 09:58:38 - [33m[nodemon] to restart at any time, enter `rs`[39m
21 Mar 09:58:38 - [33m[nodemon] watching: *.*[39m
21 Mar 09:58:38 - [32m[nodemon] starting `node C:\Users\person\workspace\HelloWorld\app.js --tea-pot-mode`[39m
Express server listening on port 3000

然后我将浏览器指向 lclhost:3000 并获得一个成功页面,正常控制台报告:

.... other stuff....
Express server listening on port 3000
[90mGET / [36m304 [90m234ms[0m
here
48
[90mGET /stylesheets/style.css [36m304 [90m4ms[0m

带断点的相关代码(标记为*):

exports.index = function(req, res){
  res.render('index', { title: 'Express' });

  console.log( "here" );
  var i=45;
 *i = i+3;

  console.log( i );

};

您可以看到它在控制台中打印“48”并完全跳过断点。

就像我说的,这是一个新安装,所以上面链接的帖子并不是很有帮助。我怀疑这与 Node.js 的异步特性有关,但似乎其他人已经成功地让它工作了。

有什么想法,或者我缺少什么吗?

4

2 回答 2

2

您可以尝试node --debug-brk=5858 app.js在命令窗口中运行,然后在文件上启动 eclipse 调试器。这对我有用。我正在使用 Enide Studio 2014。

于 2014-10-16T13:24:09.827 回答
-3

花时间学习更多的东西。

你好像连http://www.nodeclipse.org主页 都没看过,参考如何获得支持http://www.nodeclipse.org/#support

Run As >stats Node.js 处于非调试模式,所以它当然不会停止。

而不是 New > Other.. > Nodeclipse > Node.js Express Project 切换到 Node 透视图。

另见Nodeclipse 调试器忽略断点

如果问题仍然存在,请提出问题并再次提供http://www.nodeclipse.org/#support中提到的信息

于 2014-03-20T02:33:11.153 回答