问题标签 [libv8]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
281 浏览

ruby-on-rails - 安装 ruby​​gems 时出错(DL 已弃用)

您好,我正在尝试安装:

  • gem 'therubyracer', '~> 0.12.2'
  • 宝石'libv8','〜> 3.16.14.7'

在我的应用程序红宝石中(在 Windows 上)

当我执行命令时

当我尝试从终端执行安装 libv8 的 gem 命令时出现相同的错误:

我该如何解决这个问题?

0 投票
1 回答
410 浏览

ruby-on-rails - 使用 libv8 & devise & therubyracer 将应用程序升级到 rails 4.2.1

我的应用程序使用以下 gemfile 运行良好:

我想更新我的应用程序以使用 Rails 4.2.1,所以我在我的 gemfile 中更新了这一行:

然后,当我运行 bundle update 时,出现以下错误:

所以我然后尝试错误提示的命令:

此命令失败并出现以下错误:

做一些搜索我尝试了以下命令:

gem install libv8 -v '3.16.14.8' -- --with-system-v8- 成功了,但是当我再次尝试捆绑更新时,rubyracer 无法解析 v8,因为我认为系统没有安装 v8。

如何解决这个 libv8 问题?

0 投票
1 回答
156 浏览

ruby-on-rails - therubyracer 和 libv8 之间的兼容性问题

面临“therubyracer-0.12.1”、“libv8-3.16.14.0”和“v8”之间的兼容性问题。哪些 gem 版本可以解决这个问题?

0 投票
1 回答
545 浏览

javascript - 如何使用 v8 隐藏类优化技术进行优化?

我想使用隐藏类概念来使我的网络应用程序快速运行。

我从使用隐藏类的教程中尝试了以下代码,但它仍然显示突然的结果。

这是 用于基准测试的 jsperf 链接

它是正确的还是我的实现有问题?

0 投票
1 回答
2469 浏览

c++ - C++ 范围和 Google V8 脚本上下文

我有以下用 C++ 编写的几乎可以工作的代码:

我有函数 setupJs() 设置了 v8 环境,并且 callJs 应该被多次调用(在工作时,javascript 脚本每次将 var a 递增一)。

如果我把

在 setupJs 中,我可以看到如何调用函数并打印“1”。但是,如果我将函数调用与稍后调用的不同函数一起保留,我会在该行出现 SegfaultHandle<Value> js_result = jsUpdateFunc->Call(jsGlobal, 0, args);

我已经检查过,jsUpdateFunc 和 jsGlobal 都是非空指针

0 投票
1 回答
374 浏览

c++ - 节点插件无法快照(CreateToolhelp32Snapshot)模块

我正在尝试学习 C++,但不太明白为什么当我尝试通过 Node 插件对模块进行快照时,当我通过桌面上的 VS 运行程序时会返回不同的结果。

使用MSDN 中的这个源,我可以列出一个进程中的所有模块:

这可以按预期工作,并将查找/打印模块信息(省略错误检查) - 但是,当我尝试将此功能移植到 Node 附加组件时,它不会列出与上面代码相​​同的模块(代码几乎相同,我不知道为什么尝试在自定义节点插件中实现该功能会影响结果):

在使用 node-gyp 编译插件后,我可以成功调用它(在需要之后,它只是运行一个调用 的函数fm)。

如果我尝试使用 PID 5844(VS 代码)对进程进行快照,则会打印出:

Code.exe ntdll.dll wow64.dll wow64win.dll wow64cpu.dll

如果我使用 PID (Chrome) 尝试该过程,6540它会打印出:

chrome.exe ntdll.dll wow64.dll wow64win.dll wow64cpu.dll

这显然是不正确的,即使 PID(硬编码)不同,它也会打印出相同的模块。

如果我使用第一个代码块并使用 VS 运行它,我会得到:

chrome.exe ntdll.dll KERNEL32.DLL KERNELBASE.dll apphelp.dll ADVAPI32.dll msvcrt.dll sechost.dll RPCRT4.dll SspiCli.dll CRYPTBASE.dll... 还有更多模块,但您可以看到这是第二个代码块应该打印的内容。

我不知道为什么通过自定义 Node 附加组件运行代码会影响结果,除非我遗漏或不了解有关 Node 附加组件的内容。

我可以使用 Node 插件正确打开并收集有关所有进程的信息CreateToolhelp32Snapshot,但我似乎无法收集有关进程中模块的信息。

0 投票
3 回答
3147 浏览

macos - 惰性符号绑定失败 Ruby Racer

我正在运行 El Capitan(全新安装)和带有 Ruby 2.2.2 的 Rails 4.2.1 应用程序。我最初在安装 libv8 时遇到了问题,不得不强制使用 brew install v8 和 gem install libv8 (version) 以 systemv8 作为标志进行安装。Bundle 可以正常工作并安装所有 gem 依赖项。

但是当我去加载rails sbundle exec thin start启动我的应用服务器时,我收到以下错误。

我正在谷歌搜索并寻找答案,但到目前为止还没有想出太多有用的东西。我的另一台升级到 El Capitan 的机器没有问题,但是这个干净的安装对于 libv8/v8/therubyracer 是有问题的。

关于如何调试这个有什么想法吗?我想编码。

0 投票
1 回答
725 浏览

c++ - v8::Isolate::New 空访问冲突

我使用的是用 Visual Studio 2015 编译的 V8 32 位版本 4.10.253。

我正在尝试运行 Google 的示例: Chrome V8 - Getting Started

但是当我尝试运行它时,我得到:

当执行以下操作时,我得到了这个:

我的项目设置:

为了让项目在调试中编译,我将运行时库设置为:

我将 v8 包含目录包含在其他包含目录下。

最后,我包括以下库:

有人知道我在做什么错吗?提前致谢。

0 投票
1 回答
440 浏览

c++ - 当 ObjectTemplate 具有 Date 成员时,V8 NewInstance 失败

V8坏了还是我坏了?

我想将 JS 日期添加到全局对象中可用的对象。这适用于旧版本(4.9.385.28),但失败(5.0.71.33)......见输出

g++ -I/usr/local core.c -o testCore -ldl -pthread -std=c++0x -lv8 -lv8_libplatform -lv8_libbase

核心.c:

输出:

0 投票
1 回答
1333 浏览

c++ - V8 javascript如何进行异步调用

我一直试图弄清楚如何在 V8 中进行异步调用,但没有运气。我试图运行的示例 javascript 代码是:

saveFunc 函数应该保存测试函数,以便在脚本运行后稍后 C++ 代码调用它时使用。每次我尝试执行此操作时,它都会在我尝试执行已保存的功能时崩溃。我究竟做错了什么?

我在下面复制了我的整个示例代码。提前致谢。

示例代码: