Hermes JS 引擎
Hermes 是一个为 React Native 应用快速启动而优化的 JavaScript 引擎。它具有预先静态优化和紧凑的字节码特性。
如果你只对在新的或现有的 React Native 应用中使用预构建的 Hermes 感兴趣,你不需要遵循本指南或直接访问 Hermes 源代码。相反,只需按照这些说明启用 Hermes即可。
请注意,每个 Hermes 版本都针对特定的 RN 版本。经验法则是始终严格遵循 Hermes 发布版本。版本不匹配可能会在最坏的情况下导致应用立即崩溃。
如果你想了解如何直接构建和修改 Hermes,以及/或将从源代码构建的 Hermes 集成到 React Native 应用中,请继续阅读。
这里的说明简要介绍了构建 Hermes CLI 的步骤。它们假设你已经为你的操作系统设置了典型的本地开发工具,并支持 cmake 和 Ninja。有关所需依赖项、使用不同选项构建 Hermes 等更多详细信息,请参阅以下链接:
要构建 Hermes CLI 工具的本地调试版本,以下步骤应该可以在 macOS/Linux 上帮助你开始:
mkdir hermes_workingdir
cd hermes_workingdir
git clone https://github.com/facebook/hermes.git
cmake -S hermes -B build -G Ninja
cmake --build ./build
如果你使用的是 Windows,以下步骤应该可以在 Git Bash shell 中帮助你开始:
mkdir hermes_workingdir
cd hermes_workingdir
git -c core.autocrlf=false clone https://github.com/facebook/hermes.git
cmake -S hermes -B build -G 'Visual Studio 16 2019' -A x64
cmake --build ./build
现在你将进入一个包含 Hermes 构建输出的 CLI 工具的目录。从这里你可以按如下方式运行一段 JavaScript 代码:
echo "'use strict'; function hello() { print('Hello World'); } hello();" | ./bin/hermes
贡献
这个仓库的主要目的是继续发展 Hermes,使其更快更高效。我们感谢社区为修复错误和改进做出的贡献。阅读以下内容,了解如何参与改进 Hermes。
行为准则
Facebook 已采用行为准则,我们希望项目参与者遵守。请阅读完整文本,以便了解哪些行为会被允许,哪些行为不会被容忍。
贡献指南
阅读我们的贡献指南,了解我们的开发流程、如何提出错误修复和改进建议,以及如何构建和测试对 Hermes 的更改。
许可证
Hermes 采用 MIT 许可证。