这个项目能做什么
ChakraCore 是一个开源 JavaScript 引擎,提供 C API,允许开发者将 JavaScript 支持添加到任何 C 或兼容 C 的项目中。它起源于微软 Edge 背后的引擎,现在以 MIT 许可证作为社区项目进行维护。
平台支持:ChakraCore 可以在 Linux、macOS 和 Windows 上为 x64 处理器编译,仅在 Windows 上支持 x86 和 ARM。在 Linux 上支持 x86/ARM 以及在 macOS 上支持 ARM 被列为未来目标。
项目状态:微软 Edge 不再使用 Chakra,微软仅为 ChakraCore 1.11 提供安全更新,直至 2021 年 3 月 9 日。该项目计划以社区努力形式继续,主要面向嵌入式用例,并发布了规划文档,概述了未来可能的 1.12 版本。社区协调通过 GitHub 问题和 Discord 服务器进行。
使用方式:构建后,可以使用 ch(Windows 上为 ch.exe)测试引擎,这是一个轻量级主机应用,用于运行小型 JavaScript 程序。主要用例是通过 JSRT(JavaScript Runtime)API 直接将 ChakraCore 嵌入应用程序,并提供官方嵌入文档和示例。也可以通过 vcpkg 依赖管理器安装,并支持 CMake 集成(vcpkg install chakracore)。
重要范围说明:ChakraCore 仅是一个 JavaScript 引擎。它不包括 Web 浏览器或 Node.js 提供的外部 API,如 DOM API(例如 document.write())。嵌入引擎的应用程序必须实现自己的输入和输出 API;ch 主机为终端输出提供 print()。
构建:在 Windows 上,可使用 Visual Studio 2015 或 2017(支持 C++)通过 Chakra.Core.sln 解决方案构建。在 macOS 上,使用 Xcode 命令行工具和 CMake 构建。在 Linux 上,使用 CMake 和 Ninja 构建。也提供预构建二进制文件。
文档包括架构概述、嵌入快速入门、完整的 JSRT API 参考、贡献指南,以及博客、演讲和其他资源集合。欢迎以错误报告、修复验证和拉取请求形式的贡献。1.11 分支中的安全问题通过微软的私人报告渠道处理,而仅在 master 分支中发现的问题则通过 Discord 私下报告给核心团队成员。
评论
0 评分人数达到10人后显示
登录后参与讨论。