如何将调试器附加到谷歌 v8
How can i attach a debugger to google v8?
在我的应用程序(Windows 10 VC2017)中,我启用了使用Google v8和v8pp编写和执行脚本的可能性。
v8pp 调用如下脚本:
v8::Local<v8::Value> context::run_script(std::string const& source, std::string const& filename)
{
v8::EscapableHandleScope scope(isolate_);
v8::Local<v8::Context> context = isolate_->GetCurrentContext();
v8::ScriptOrigin origin(to_v8(isolate_, filename));
v8::Local<v8::Script> script;
bool const is_valid = v8::Script::Compile(context,
to_v8(isolate_, source), &origin).ToLocal(&script);
v8::Local<v8::Value> result;
if (!script.IsEmpty())
{
auto res1 = script->Run(context); //
if(! res1.IsEmpty())
result = res1.ToLocalChecked();
}
return scope.Escape(result);
}
如何将调试器(chrome 调试)附加到我的代码中?
我在 https://v8.dev/docs/inspector 找到了谷歌的描述 -但是这留下了一些空白,主要由js代码组成?
我在 https://github.com/xaxxon/v8toolkit/blob/master/src/debugger.cpp 找到了 v8toolkit 的实现。但这似乎不适用于窗口。
将 chrome 调试附加到 js 代码的简单方法是什么?代码通常不是文件,而是存储在数据库中,然后存储在 std::string 中。
我终于完成了 v8inspector 的 Windows 版本,它与集成 v8 的独立 Windows 应用程序配合得很好。
我做了一个自己的分支,包括描述在哪里可以找到/构建所需的第三方库(或在哪里找到预构建)。我还做了一些更改/添加:https://github.com/StefanWoe/v8inspector
同时,这也已合并到父项目中:https://github.com/hsharsha/v8inspector
编辑:与此同时,我被指向另一个使用 boost::beast 构建的实现,没有其他依赖项。更简单,更强大等:https://github.com/ahmadov/v8_inspector_example
相关文章:
- 奇怪的(对我来说)返回声明 - 在谷歌上找不到任何关于它的信息
- 谷歌测试中的期望值存储在哪里
- 谷歌模拟和覆盖关键字
- 如何使用ESP8266向谷歌主页发送命令
- 更正 CMakeList.txt 用于谷歌测试的文件?
- 如何将GTest与CMake一起使用?遵循谷歌指南时的链接问题
- 在没有 API 的情况下使用谷歌翻译文本
- 重载运算符<<采用谷歌 C++ 风格
- 如何在谷歌模拟中匹配 C 样式数组
- 如何让谷歌测试正常运行。测试总是失败。(它不会编译)
- 为什么我收到来自谷歌的错误请求?
- 如何使用不同的谷歌模拟运行相同的谷歌测试用例?
- 谷歌测试方法与流
- _mm256_load_ps调试模式下导致谷歌/基准测试的分段错误
- 谷歌测试:模板模板的笛卡尔乘积的类型列表与模板
- 我可以使用谷歌 v8 在回调函数中获取 JavaScript 函数C++源文本吗?
- 如何将调试器附加到谷歌 v8
- 谷歌v8内存泄漏执行的代码
- 交叉编译树莓派的谷歌v8库
- 谷歌的v8引擎与C++11