首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我可以更改v8的node.js版本吗?

我可以更改v8的node.js版本吗?
EN

Stack Overflow用户
提问于 2019-09-16 21:54:05
回答 1查看 323关注 0票数 2

我正在编写一个node.js C++插件,它在两个相同的node.js版本中的行为不同,但具有不同的v8版本。因此,我还想让v8版本完全相同,看看不同的v8版本是否会导致不同的行为。

要再现这个版本,您可以打开VSCode的"about“,然后查看node.js和V8版本。VSCode的v8版本的V8与相同版本的常规node.js (node -p process.versions.v8,以-node结尾)中使用的不同(以-electron结尾)。

在我的例子中,我有以下这些版本:

  • VSCode: Node.js 10.11.0,V8 6.9.427.31-电子
  • 常规Node.js: 10.11.0,V8 6.8.275.32-node.28
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-17 17:38:46

这里是V8开发人员。对于记录和未来的搜索者来说: V8通常不会保证API或ABI在不同版本之间的稳定性,因此在默认情况下,给定的Node.js版本(就像任何其他V8嵌入器,例如基于铬的浏览器)都与一个V8版本完全兼容。

尽管如此:

  • 要适应新的API版本,所需的更改通常相当小,而且非常简单;但它们确实需要您更改一些C++代码并重新编译Node。(在过去十年中,有几个例外,需要开展大量工作。)
  • 有时,我们(V8团队)有理由做出例外,并且实际上保证ABI在一个小版本范围内的稳定性。Node 10发布前后的IIRC就是这样的时期;6.8和/或6.9很可能就在这个范围内,我不确定。
  • 有时候你可能会很幸运:没有什么重要的改变,而更早的或更晚的版本只起作用:-)

在目前的情况下,我同意@PatrickRoberts的建议,即调试可能比二分法更有用。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57964859

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档