流星服务器端断点从未在 cloud9 中命中
Posted
技术标签:
【中文标题】流星服务器端断点从未在 cloud9 中命中【英文标题】:Meteor server-side breakpoint never hit in cloud9 【发布时间】:2015-02-23 10:37:44 【问题描述】:我可以使用内置的 Meteor 运行配置在 Cloud9 IDE 中运行一个流星应用程序。但调试器不会遇到任何服务器端断点。我也尝试创建自己的运行配置,但也不起作用:
"cmd": [
"bash",
"--login",
"-c",
"meteor $debug? run --debug-port=15454 --port $IP:$PORT"
],
"debugger": "v8",
"debugport": 15454,
"info": "Your code is running at \\033[01;34m$url\\033[00m.\n\\033[01;31mImportant:\\033[00m use \\033[01;32mprocess.env.PORT\\033[00m as the port and \\033[01;32mprocess.env.IP\\033[00m as the host in your scripts!\n"
有人让调试器工作吗?
【问题讨论】:
你能让它工作吗?? 【参考方案1】:我一直在研究流星调试问题(我为 C9 工作)。我注意到有一个时间问题。有时流星启动需要很长时间(分钟),因为它首先启动数据库等。我将调试器在放弃连接之前等待的时间更改为 10 分钟。会不会是流星启动需要超过 10 分钟?
另请注意,c9 不支持客户端代码调试。它只支持服务器端代码。
【讨论】:
Meteor 的启动时间比其他类似复杂度的 Node 应用程序(比如 15 秒 vs 5 秒)要长,但我没有看到延迟超过 1 分钟。我发现如果我将debugger
语句添加到代码中,它会命中,但不会命中我在 IDE 中设置的断点。我还注意到点击debugger
时打开的文件位于/app/server/...
,而不是我的原始文件/simple-todos/server/...
。这似乎是一个线索,好像我在 IDE 中设置断点的文件没有被调试器视为源文件。以上是关于流星服务器端断点从未在 cloud9 中命中的主要内容,如果未能解决你的问题,请参考以下文章
Websocket 服务器问题:onOpen 命中客户端,但服务器 websocket 处理程序 OnOpen 和其他事件从未命中