【问题标题】:V8 version in node and ChromeDevTools?节点和 ChromeDevTools 中的 V8 版本?
【发布时间】:2011-10-16 01:42:26
【问题描述】:

我的主要问题是:

  1. 我从节点 0.4.10 运行的是哪个版本的 V8?
  2. 如何判断此版本是否与 Eclipse 中的 ChromeDevTools 0.2.2 兼容?

背景:我几乎得到了Eclipse working for debugging node.js remotely。事实上,对于一个简单的“Hello World”应用程序,它可以完美地工作(在添加服务器代理之后),但是当我将“express”添加到组合中时它不会正确连接。 Eclipse 错误是:

在“调试会话初始化: 远程NodeJS”。回调发生异常

...我追踪到this source code 的第 61 行(感谢“occured”的拼写错误。)

我想在继续之前消除版本偏差的可能性。

编辑:从错误日志中挖掘堆栈跟踪。嗯,我的服务器代理可能有编码问题?

java.lang.RuntimeException: Exception occured in callback
at org.chromium.sdk.CallbackSemaphore.tryAcquire(CallbackSemaphore.java:61)
at org.chromium.sdk.CallbackSemaphore.tryAcquireDefault(CallbackSemaphore.java:29)
at org.chromium.sdk.internal.JavascriptVmImpl.getScripts(JavascriptVmImpl.java:33)
at org.chromium.debug.core.model.VProjectWorkspaceBridge.reloadScriptsAtStart(VProjectWorkspaceBridge.java:121)
at org.chromium.debug.core.model.LaunchInitializationProcedure.execute(LaunchInitializationProcedure.java:80)
at org.chromium.debug.core.model.LaunchInitializationProcedure.access$0(LaunchInitializationProcedure.java:64)
at org.chromium.debug.core.model.LaunchInitializationProcedure$1.run(LaunchInitializationProcedure.java:38)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Caused by: java.lang.Exception: Exception saved from callback
at org.chromium.sdk.CallbackSemaphore.callbackDone(CallbackSemaphore.java:72)
at org.chromium.sdk.internal.DebugSession$ScriptLoader$2.callbackDone(DebugSession.java:276)
at org.chromium.sdk.internal.tools.v8.BaseCommandProcessor.callThemBack(BaseCommandProcessor.java:136)
at org.chromium.sdk.internal.tools.v8.BaseCommandProcessor.processIncoming(BaseCommandProcessor.java:103)
at org.chromium.sdk.internal.tools.v8.V8CommandProcessor.processIncomingJson(V8CommandProcessor.java:109)
at org.chromium.sdk.internal.StandaloneVmImpl$4.messageReceived(StandaloneVmImpl.java:108)
at org.chromium.sdk.internal.transport.SocketConnection$RegularMessageItem.report(SocketConnection.java:120)
at org.chromium.sdk.internal.transport.SocketConnection$ResponseDispatcherThread.run(SocketConnection.java:206)
Caused by: java.lang.RuntimeException: org.eclipse.core.internal.resources.ResourceException: < is an invalid character in resource name '<eval #83>.chromium'.
at org.chromium.debug.core.util.ChromiumDebugPluginUtil$4.tryCreate(ChromiumDebugPluginUtil.java:247)
at org.chromium.debug.core.util.ChromiumDebugPluginUtil$4.tryCreate(ChromiumDebugPluginUtil.java:1)
at org.chromium.debug.core.util.UniqueKeyGenerator.createUniqueKey(UniqueKeyGenerator.java:22)
at org.chromium.debug.core.util.ChromiumDebugPluginUtil.createFile(ChromiumDebugPluginUtil.java:254)
at org.chromium.debug.core.model.ResourceManager.createAndRegisterResourceFile(ResourceManager.java:106)
at org.chromium.debug.core.model.ResourceManager.addScript(ResourceManager.java:72)
at org.chromium.debug.core.model.VProjectWorkspaceBridge$2.success(VProjectWorkspaceBridge.java:131)
at org.chromium.sdk.internal.DebugSession$ScriptLoader$1$1.call(DebugSession.java:236)
at org.chromium.sdk.internal.DebugSession$ScriptLoader$1.processCall(DebugSession.java:258)
at org.chromium.sdk.internal.DebugSession$ScriptLoader$1.success(DebugSession.java:233)
at org.chromium.sdk.internal.tools.v8.V8Helper$2.success(V8Helper.java:120)
at org.chromium.sdk.internal.tools.v8.V8CommandCallbackBase.messageReceived(V8CommandCallbackBase.java:25)
at org.chromium.sdk.internal.tools.v8.V8CommandCallbackBase.messageReceived(V8CommandCallbackBase.java:1)
at org.chromium.sdk.internal.tools.v8.BaseCommandProcessor$2.call(BaseCommandProcessor.java:99)
at org.chromium.sdk.internal.tools.v8.BaseCommandProcessor$2.call(BaseCommandProcessor.java:1)
at org.chromium.sdk.internal.tools.v8.BaseCommandProcessor.callThemBack(BaseCommandProcessor.java:129)
... 5 more
Caused by: org.eclipse.core.internal.resources.ResourceException: < is an invalid character in resource name '<eval #83>.chromium'.
at org.eclipse.core.internal.resources.Resource.checkValidPath(Resource.java:432)
at org.eclipse.core.internal.resources.File.create(File.java:116)
at org.eclipse.core.internal.resources.File.create(File.java:196)
at org.chromium.debug.core.util.ChromiumDebugPluginUtil$4.tryCreate(ChromiumDebugPluginUtil.java:245)
... 20 more

【问题讨论】:

  • 0.3.0 现已发布。希望它是固定的。如果不是,请告诉我们。

标签: eclipse node.js v8 google-chrome-devtools


【解决方案1】:

repl 中的process.versions 揭示了这些信息:

> process.versions
{ node: '0.4.10', v8: '3.1.8.26', ares: '1.7.4', ev: '4.4', openssl: '1.0.0d' }

【讨论】:

  • 感谢您的回答。您是否知道 V8 和 ChromeDevTools 之间的版本关系/依赖关系是什么?
【解决方案2】:

这里不应该有任何与版本相关的问题,至少在初始化阶段是这样。 V8 调试协议的发展非常缓慢。

很遗憾,您引用的信息过于笼统。您认为您可以在某处找到堆栈跟踪吗?该消息可能有“详细信息”按钮(但您可能会发现它),通常也会记录异常。您可以尝试打开“General->Error Log”视图(在大多数 Eclipse 配置中可用),或者您可以查看 Eclipse 工作区中的文件:/.metadata/.log。 该代码表明存在原因异常,错误消息中缺少该异常。

感谢您提供拼写错误报告。 :)

【讨论】:

  • 添加了我从“窗口->显示视图->错误日志”获得的堆栈跟踪。感谢您的提示。
  • 顺便说一句,听起来您是 Eclipse ChromeDevTools 连接的开发人员。是否有适当的地方报告此类问题的错误?如果没有,如果您想了解有关此问题的更多信息,请发送电子邮件至 john.mjhm@gmail.com。
  • 谢谢。现在我明白了。这是 Windows 下的一个已知问题code.google.com/p/chromedevtools/issues/detail?id=45 不幸的是,0.3.0 版还没有准备好,但希望它很快就会出来。这应该可以回答您关于合适地点的问题 :) 您也可以在讨论组中与我联系(您必须订阅)groups.google.com/group/chromedevtools-dev
  • 感谢您的帮助。我期待0.3.0。一旦这个修复到位,我将有一个很好的远程调试工作流程。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-30
  • 1970-01-01
  • 1970-01-01
  • 2021-03-10
  • 1970-01-01
  • 2020-12-09
相关资源
最近更新 更多