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

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

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

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

jf_46214456 ? 來(lái)源:jf_46214456 ? 作者:jf_46214456 ? 2024-03-10 19:58 ? 次閱讀

簡(jiǎn)介

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

ets_frontend組件架構(gòu)圖

目錄

/arkcompiler/ets_frontend/
├── test262            # test262測(cè)試配置和運(yùn)行腳本
├── testTs             # 系統(tǒng)測(cè)試目錄
├── es2panda
    ├── aot            # 邏輯入口
    ├── binder         # 信息綁定
    ├── compiler       # 編譯邏輯
    ├── ir             # 字節(jié)碼生成
    ├── lexer          # 詞法分析
    ├── parser         # 語(yǔ)法解析,ast生成
    ├── scripts        # 腳本目錄
    ├── test           # 測(cè)試目錄
    ├── typescript     # typescript支持
    └── util           # 工具目錄
├── ts2panda
    ├── doc            # 文檔
    ├── scripts        # 依賴的腳本
    ├── src            # 源碼存放目錄
    ├── templates      # ruby模板文件
    ├── tests          # UT單元測(cè)試目錄
    ├── 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)上可通過(guò)全量編譯或指定編譯前端工具鏈獲取。

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

使用說(shuō)明

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(抽象語(yǔ)法樹(shù))[]()[]()-[]()[]()-
[]()[]()--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)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 鴻蒙
    +關(guān)注

    關(guān)注

    57

    文章

    2352

    瀏覽量

    42863
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    鴻蒙原生開(kāi)發(fā)手記:01-元服務(wù)開(kāi)發(fā)

    簡(jiǎn)介 元服務(wù)是鴻蒙中的一種輕量應(yīng)用形態(tài),無(wú)需下載,直接運(yùn)行。類似于微信小程序,但與小程序不同的是,元服務(wù)更加輕量。 元服務(wù)使用原生開(kāi)發(fā),是系統(tǒng)級(jí)提供的,無(wú)論從易用性、性能、體驗(yàn)上,都要比小程序好
    發(fā)表于 11-14 17:28

    鴻蒙Flutter實(shí)戰(zhàn):07混合開(kāi)發(fā)

    # 鴻蒙Flutter實(shí)戰(zhàn):混合開(kāi)發(fā) 鴻蒙Flutter混合開(kāi)發(fā)主要有兩種形式。 ## 1.基于har 將flutter module打包成har包,在原生
    發(fā)表于 10-23 16:00

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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