简介
ets_frontend组件是方舟运行时子系统的前端工具,结合ace-ets2bundle组件,支持将ets文件转换为方舟字节码文件。
ets_frontend组件架构图

目录
/arkcompiler/ets_frontend/
├── test262 # test262测试配置和运行脚本
├── testTs # 系统测试目录
├── es2panda
├── aot # 逻辑入口
├── binder # 信息绑定
├── compiler # 编译逻辑
├── ir # 字节码生成
├── lexer # 词法分析
├── parser # 语法解析,ast生成
├── scripts # 脚本目录
├── test # 测试目录
├── typescript # typescript支持
└── util # 工具目录
├── ts2panda
├── doc # 文档
├── scripts # 依赖的脚本
├── src # 源码存放目录
├── templates # ruby模板文件
├── tests # UT单元测试目录
├── tools # ts2abc提供的工具
└── ts2abc # abc文件生成相关
编译构建
ets_frontend组件采用命令行交互方式,支持将JavaScript代码转换为方舟字节码文件,使其能够在方舟运行时上运行。支持Windows/Linux/MacOS平台。方舟前端工具在linux平台上可通过全量编译或指定编译前端工具链获取。
$ ./build.sh --product-name rk3568 --build-target ets_frontend_build
使用说明
es2panda使用方式
使用ets_frontend组件下的es2abc可执行文件将JavaScript文件转换为方舟字节码文件
$ cd out/rk3568/clang_x64/arkcompiler/ets_frontend/
$ ./es2abc [options] file.js
当不输入任何option参数时,默认生成方舟二进制文件。
[]()
| []()[]()选项 | []()[]()描述 | []()[]()取值范围 | []()[]()默认值 |
|---|---|---|---|
| []()[]()--debug-info | []()[]()携带debug信息 | []()[]()- | []()[]()- |
| []()[]()--debugger-evaluate-expression | []()[]()debugger下对输入的base64形式的表达式求值 | []()[]()- | []()[]()- |
| []()[]()--dump-assembly | []()[]()输出为汇编文件 | []()[]()- | []()[]()- |
| []()[]()--dump-ast | []()[]()打印解析得到的ast(抽象语法树) | []()[]()- | []()[]()- |
| []()[]()--dump-debug-info | []()[]()打印debug信息 | []()[]()- | []()[]()- |
| []()[]()--dump-literal-buffer | []()[]()打印literal buffer内容 | []()[]()- | []()[]()- |
| []()[]()--dump-size-stat | []()[]()显示字节码相关的统计信息 | []()[]()- | []()[]()- |
| []()[]()--extension | []()[]()指定输入类型 | []()[]()['js', 'ts', 'as'] | []()[]()- |
| []()[]()--help | []()[]()帮助提示 | []()[]()- | []()[]()- |
| []()[]()--module | []()[]()按照ESM模式编译 | []()[]()- | []()[]()- |
| []()[]()--opt-level | []()[]()指定编译优化等级 | []()[]()['0', '1', '2'] | []()[]()0 |
| []()[]()--output | []()[]()输出文件路径 | []()[]()- | []()[]()- |
| []()[]()--parse-only | []()[]()只对输入文件做解析动作 | []()[]()- | []()[]()- |
| []()[]()--thread | []()[]()指定生成字节码时所用的线程数目 | []()[]()0-机器支持的线程数目 | []()[]()0 |
审核编辑 黄宇
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
鸿蒙
+关注
关注
60文章
2858浏览量
45351
发布评论请先 登录
相关推荐
热点推荐
【HarmonyOS 5】鸿蒙页面和组件生命周期函数
【HarmonyOS 5】鸿蒙页面和组件生命周期函数 ##鸿蒙开发能力 ##HarmonyOS SDK应用服务##鸿蒙金融类应用 (金融理财
飞书开源“RTV”富文本组件 重塑鸿蒙应用富文本渲染体验
更高效的富文本解决方案。 富文本作为内容展示和信息交互的重要形式,在内容创作、办公协作、教育学习、企业应用等多种复杂业务场景中扮演着重要角色。随着鸿蒙生态应用类型的不断丰富,富文本渲染成为各类应用开发过程中不可或缺的基础能力。
鸿蒙5开发宝藏案例分享---Swiper组件性能优化实战
鸿蒙宝藏:Swiper组件性能优化实战,告别卡顿丢帧!
大家好!最近在鸿蒙开发时,偶然发现了官方文档里埋藏的 性能优化宝藏案例 ,尤其是<span class=\"
发表于 06-12 17:53
鸿蒙5开发宝藏案例分享---性能优化案例解析
鸿蒙性能优化宝藏指南:实战工具与代码案例解析
大家好呀!今天在翻鸿蒙开发者文档时,意外挖到一个 性能优化宝藏库 ——原来官方早就提供了超多实用工具和案例,但很多小伙伴可能没发现!这篇就带大家手把手
发表于 06-12 16:36
使用DevEcoStudio 开发、编译鸿蒙 NEXT_APP 以及使用中文插件
# 使用DevEcoStudio 开发、编译鸿蒙 NEXT_APP 以及使用中文插件 #鸿蒙开发工具 #DevEco Studio
## 1. 概述
DevEco Studio 是
发表于 06-11 17:18
2025开源鸿蒙开发者大会圆满落幕
近日,开源鸿蒙开发者大会2025(OHDC.2025,简称“大会”)在深圳隆重开幕。大会正式发布了开源鸿蒙5.1 Release版本,举行了开源鸿蒙应用技术
鸿蒙北向开发OpenHarmony5.0 DevEco Studio开发工具安装与配置
本文介绍OpenHarmony5.0 DevEco Studio开发工具安装与配置,鸿蒙北向开发入门必备!由触觉智能Purple Pi OH鸿蒙开发
开源啦!!!基于鸿蒙ArkTS封装的图表组件《McCharts》,大家快来一起共创
Hello;大家好,我是陈杨。好久没更新了,首先是自己本职工作比较忙,基本没时间写作。其次就是学习技术,自学鸿蒙ArkTS语言已经接近半年了,也算半路出师了,这次将分享我封装的组件库,所以有啥讲错
发表于 03-15 15:21
【「极速探索HarmonyOS NEXT 」阅读体验】 初印象:一本纯血鸿蒙应用开发入门的好书
非常有幸的于近日收到了电子发烧友寄来的《 极速探索HarmonyOS NEXT **** 纯血鸿蒙应用开发实践》这本由清华大学出版社出版的一本纯血鸿蒙应用开发
发表于 03-04 12:41
OpenHarmony怎么修改DPI密度值?触觉智能RK3566鸿蒙开发板演示
开源鸿蒙OpenHarmony系统下,修改DPI密度值的方法,触觉智能Purple Pi OH鸿蒙开发板演示,搭载了瑞芯微RK3566四核处理器,Laval鸿蒙社区推荐

鸿蒙开发学习:【ets_frontend组件】
评论