0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

鴻蒙開發(fā)學(xué)習(xí):【ets_frontend組件】

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-03-10 19:58 ? 次閱讀

簡介

ets_frontend組件是方舟運(yùn)行時(shí)子系統(tǒng)的前端工具,結(jié)合ace-ets2bundle組件,支持將ets文件轉(zhuǎn)換為方舟字節(jié)碼文件。

ets_frontend組件架構(gòu)圖

目錄

/arkcompiler/ets_frontend/
├── test262            # test262測試配置和運(yùn)行腳本
├── testTs             # 系統(tǒng)測試目錄
├── es2panda
    ├── aot            # 邏輯入口
    ├── binder         # 信息綁定
    ├── compiler       # 編譯邏輯
    ├── ir             # 字節(jié)碼生成
    ├── lexer          # 詞法分析
    ├── parser         # 語法解析,ast生成
    ├── scripts        # 腳本目錄
    ├── test           # 測試目錄
    ├── typescript     # typescript支持
    └── util           # 工具目錄
├── ts2panda
    ├── doc            # 文檔
    ├── scripts        # 依賴的腳本
    ├── src            # 源碼存放目錄
    ├── templates      # ruby模板文件
    ├── tests          # UT單元測試目錄
    ├── tools          # ts2abc提供的工具
    └── ts2abc         # abc文件生成相關(guān)

編譯構(gòu)建

ets_frontend組件采用命令行交互方式,支持將JavaScript代碼轉(zhuǎn)換為方舟字節(jié)碼文件,使其能夠在方舟運(yùn)行時(shí)上運(yùn)行。支持Windows/Linux/MacOS平臺(tái)。方舟前端工具在linux平臺(tái)上可通過全量編譯或指定編譯前端工具鏈獲取。

$ ./build.sh --product-name rk3568 --build-target ets_frontend_build

使用說明

es2panda使用方式

使用ets_frontend組件下的es2abc可執(zhí)行文件將JavaScript文件轉(zhuǎn)換為方舟字節(jié)碼文件

$ cd out/rk3568/clang_x64/arkcompiler/ets_frontend/
$ ./es2abc [options] file.js

當(dāng)不輸入任何option參數(shù)時(shí),默認(rèn)生成方舟二進(jìn)制文件。

[]()

[]()[]()選項(xiàng)[]()[]()描述[]()[]()取值范圍[]()[]()默認(rèn)值
[]()[]()--debug-info[]()[]()攜帶debug信息[]()[]()-[]()[]()-
[]()[]()--debugger-evaluate-expression[]()[]()debugger下對(duì)輸入的base64形式的表達(dá)式求值[]()[]()-[]()[]()-
[]()[]()--dump-assembly[]()[]()輸出為匯編文件[]()[]()-[]()[]()-
[]()[]()--dump-ast[]()[]()打印解析得到的ast(抽象語法樹)[]()[]()-[]()[]()-
[]()[]()--dump-debug-info[]()[]()打印debug信息[]()[]()-[]()[]()-
[]()[]()--dump-literal-buffer[]()[]()打印literal buffer內(nèi)容[]()[]()-[]()[]()-
[]()[]()--dump-size-stat[]()[]()顯示字節(jié)碼相關(guān)的統(tǒng)計(jì)信息[]()[]()-[]()[]()-
[]()[]()--extension[]()[]()指定輸入類型[]()[]()['js', 'ts', 'as'][]()[]()-
[]()[]()--help[]()[]()幫助提示[]()[]()-[]()[]()-
[]()[]()--module[]()[]()按照ESM模式編譯[]()[]()-[]()[]()-
[]()[]()--opt-level[]()[]()指定編譯優(yōu)化等級(jí)[]()[]()['0', '1', '2'][]()[]()0
[]()[]()--output[]()[]()輸出文件路徑[]()[]()-[]()[]()-
[]()[]()--parse-only[]()[]()只對(duì)輸入文件做解析動(dòng)作[]()[]()-[]()[]()-
[]()[]()--thread[]()[]()指定生成字節(jié)碼時(shí)所用的線程數(shù)目[]()[]()0-機(jī)器支持的線程數(shù)目[]()[]()0

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 鴻蒙
    +關(guān)注

    關(guān)注

    56

    文章

    2267

    瀏覽量

    42489
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    鴻蒙開發(fā)組件:DataAbility的生命周期

    應(yīng)用開發(fā)者可以根據(jù)業(yè)務(wù)場景實(shí)現(xiàn)data.js/data.ets中的生命周期相關(guān)接口。DataAbility生命周期接口說明見下表。
    的頭像 發(fā)表于 06-20 09:39 ?284次閱讀

    HarmonyOS實(shí)戰(zhàn)開發(fā)-如何使用全局狀態(tài)保留能力彈窗來實(shí)現(xiàn)評(píng)論組件。

    層-短視頻切換 ||---CommentView.ets // 視圖層-評(píng)論組件 模塊依賴 路由模塊:供entry模塊實(shí)現(xiàn)路由導(dǎo)航 公共模塊:全局狀態(tài)保留能力彈窗 最后 如果大家覺得這篇內(nèi)容對(duì)學(xué)習(xí)
    發(fā)表于 05-07 15:06

    HarmonyOS實(shí)戰(zhàn)開發(fā)-如何通過BlendMode屬性來實(shí)現(xiàn)掛件和圖片的混合

    ||---BlendModeView.ets // 視圖層-應(yīng)用主頁面 模塊依賴 本實(shí)例依賴common模塊來實(shí)現(xiàn)日志的打印、資源 的調(diào)用、依賴動(dòng)態(tài)路由模塊來實(shí)現(xiàn)頁面的動(dòng)態(tài)加載。 最后 如果大家覺得這篇內(nèi)容對(duì)學(xué)習(xí)鴻蒙
    發(fā)表于 05-07 14:45

    鴻蒙OS開發(fā)學(xué)習(xí):【尺寸適配實(shí)現(xiàn)】

    鴻蒙開發(fā)中,尺寸適配是一個(gè)重要的概念,它可以幫助我們?cè)诓煌聊怀叽绲脑O(shè)備上正確顯示和布局我們的應(yīng)用程序。本文將介紹如何在鴻蒙開發(fā)中實(shí)現(xiàn)尺寸適配的方法。
    的頭像 發(fā)表于 04-10 16:05 ?1464次閱讀
    <b class='flag-5'>鴻蒙</b>OS<b class='flag-5'>開發(fā)</b><b class='flag-5'>學(xué)習(xí)</b>:【尺寸適配實(shí)現(xiàn)】

    鴻蒙開發(fā)學(xué)習(xí):【媒體引擎組件

    HiStreamer是一個(gè)輕量級(jí)的媒體引擎組件,提供播放、錄制等場景的媒體數(shù)據(jù)流水線處理。
    的頭像 發(fā)表于 03-11 17:16 ?387次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>學(xué)習(xí)</b>:【媒體引擎<b class='flag-5'>組件</b>】

    鴻蒙實(shí)戰(zhàn)項(xiàng)目開發(fā):【短信服務(wù)】

    ://gitee.com/openharmony/applications_app_samples.git git pull origin master ? 最后呢,很多開發(fā)朋友不知道需要學(xué)習(xí)那些鴻蒙技術(shù)?
    發(fā)表于 03-03 21:29

    鴻蒙實(shí)戰(zhàn):HarmonyOS NEXT【城市選擇】

    ||---DetailData.ets// 模型層-數(shù)據(jù)模塊 模塊依賴 依賴[har包-common庫中UX標(biāo)準(zhǔn)] 更多鴻蒙開發(fā)內(nèi)容 `可+ mau123789令頁,是v喔!`
    發(fā)表于 02-29 15:50

    學(xué)習(xí)鴻蒙背后的價(jià)值?星河版開放如何學(xué)習(xí)?

    需要有更多的鴻蒙人才;鴻蒙開發(fā)工程師也將會(huì)迎來爆發(fā)式的增長! 所以學(xué)習(xí)鴻蒙勢(shì)在必行,而大部分人都能適合學(xué)
    發(fā)表于 02-22 20:55

    鴻蒙開發(fā)【應(yīng)用開發(fā)基礎(chǔ)知識(shí)】

    通過OpenHarmony提供的Stage模型和ArkUI的eTS聲明式開發(fā)規(guī)范,結(jié)合簡單的Demo,分享學(xué)習(xí)OpenHarmony/docs/application-dev
    的頭像 發(fā)表于 01-29 18:46 ?1211次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b>【應(yīng)用<b class='flag-5'>開發(fā)</b>基礎(chǔ)知識(shí)】

    鴻蒙ArkUI開發(fā)-Tabs組件的使用

    鴻蒙ArkUI開發(fā)-Tabs組件的使用
    的頭像 發(fā)表于 01-19 16:01 ?1413次閱讀
    <b class='flag-5'>鴻蒙</b>ArkUI<b class='flag-5'>開發(fā)</b>-Tabs<b class='flag-5'>組件</b>的使用

    鴻蒙開發(fā)OpenHarmony組件復(fù)用案例

    ) } }, item => item) } } } 本文主要是對(duì)鴻蒙開發(fā)基礎(chǔ)當(dāng)中的OpenHarmony技術(shù)組件復(fù)用示例, 更多鴻蒙開發(fā)
    發(fā)表于 01-15 17:37

    鴻蒙開發(fā)基礎(chǔ)-Web組件之cookie操作

    }) ... } ... 本文章主要是對(duì)鴻蒙開發(fā)當(dāng)中ArkTS語言的基礎(chǔ)應(yīng)用實(shí)戰(zhàn),Web組件里的cookie操作。更多的鴻蒙應(yīng)用開發(fā)
    發(fā)表于 01-14 21:31

    免費(fèi)學(xué)習(xí)鴻蒙(HarmonyOS)開發(fā),一些地址分享

    國內(nèi)一流高校。通過鴻蒙班的設(shè)立,高??梢詾閷W(xué)生提供專業(yè)的鴻蒙OS學(xué)習(xí)環(huán)境和豐富的實(shí)踐機(jī)會(huì),培養(yǎng)出更多的鴻蒙開發(fā)人才,為
    發(fā)表于 01-12 20:48

    鴻蒙基礎(chǔ)開發(fā)實(shí)戰(zhàn)-(ArkTS)像素轉(zhuǎn)換

    的使用。通過像素轉(zhuǎn)換案例,向開發(fā)者講解了如何使用像素單位設(shè)置組件的尺寸、字體的大小以及不同像素單位之間的轉(zhuǎn)換方法。更多鴻蒙4.0的學(xué)習(xí),可以前往主頁
    發(fā)表于 01-11 16:53

    鴻蒙 OS 應(yīng)用開發(fā)初體驗(yàn)

    大家對(duì)華為生態(tài)的應(yīng)用開發(fā)感興趣或者想深入學(xué)習(xí)借鑒華為做 OS 和物聯(lián)網(wǎng)的思路,鴻蒙系統(tǒng)就是一個(gè)標(biāo)桿。 轉(zhuǎn)自【巫山老妖】
    發(fā)表于 11-02 19:38