环境准备
JDK
这里以 openjdk11 为例子进行安装。
sudo apt update
sudo apt install openjdk-11-jdk
安装完成可以通过下面指令检查:
javac --version
输出内容如下
javac 11.0.21
d8
d8工具作为独立工具被纳入了 Android Studio 构建工具 28.0.1 及更高版本中。因此通过下载安装 Android Studio 工具就可以获取到d8工具。
- 下载 Android Studio:
wget https://redirector.gvt1.com/edgedl/android/studio/ide-zips/2023.2.1.24/android-studio-2023.2.1.24-linux.tar.gz
- 解压
tar -xzvf android-studio-2023.1.1.28-linux.tar.gz
- 启动 Android Studio
cd android-studio/bin
./studio.sh
- 配置国内镜像源 (如果此时提示无法下载 Android SDK)
- 进入到 Android Studio 主页面,点击下方的
More Actions->SDK Manager。 - 找到左侧的:
Appearance & Behavior->System Settings->HTTP Proxy。 - 选择
Auto-detect proxy settings,并勾选Automatic proxy configuration URL。在后面的输入框中填写镜像源地址,镜像源可选URL如下:
https://mirrors.aliyun.com/android.googlesource.com/
https://mirrors.cloud.tencent.com/AndroidSDK/
随后重新启动 Android Studio 即可顺利下载到 Android SDK。
Android SDK路径: ~/Android/Sdk/build-tools/。d8可执行程序就在该目录的版本号目录下面。
简介
输出 js / ts / java 测试用例分别通过 es2abc / es2abc / javac和d8 编译生成字节码文件大小的对比报告。
运行脚本
使用说明
python3 size_compare.py --es2abc-path ES2ABC_PATH --javac-path JAVAC_PATH [arguments]
参数
--es2abc-path: 可执行程序 es2abc 的路径。--javac-path: 可执行程序 javac 的路径。
可选参数
--d8-path: 可执行程序 d8 的路径。--timeout: 用例执行的时间限制 (单位: 秒)。
测试结果
字节码文件大小对比报告: ./size_comparison_report.html