Ubuntu 22.04 安装 Apache Royale 0.9.12 指南
Ubuntu 22.04 安装 Apache Royale 0.9.12(MXML/ActionScript 跨编译 JS 的 SDK)指南:JDK 11 环境准备、版本选型、sha512 校验、SDK 布局、环境变量与卸载,全程实测。
Ubuntu 22.04 安装 Apache Royale 0.9.12 指南
目标:在 Ubuntu 22.04 服务器上完成 Apache Royale 0.9.12(MXML/ActionScript 跨编译为 JavaScript 的 SDK 框架,以 SDK 安装 + 编译器使用形态提供,非独立服务)的安装与验证。本文给出 JDK 11 环境准备、版本选型、官方下载与 sha512 校验、SDK 目录布局、环境变量配置与卸载方式。所有命令与回显均在 Ubuntu 22.04.5 + JDK 11 环境实测通过。
一、环境信息
- 操作系统:Ubuntu 22.04.5 LTS(VERSION_CODENAME=jammy)
- 架构:x86_64
- Java:OpenJDK 11.0.32.1(
openjdk-11-jdk-headless,Ubuntu 官方源) - Node.js:v12.22.9(Ubuntu 官方源),npm 8.5.1
- 构建工具:Apache Maven 3.6.3(Ubuntu 官方源)
- Royale 版本:0.9.12(downloads.apache.org 当前唯一发布版本)
- SDK 安装目录:
/opt/royale/apache-royale-0.9.12-bin-js(压缩包 171MB,解压后约 300MB) - 演示账号:root
💡 说明:Apache Royale 是一个把 MXML/ActionScript 代码跨编译为 JavaScript(浏览器端 JS 与 Node 端 JS 双目标)的开源 SDK 框架,本身没有可执行守护进程或服务端口,所谓「安装」本质是下载并解压 SDK,配置
ROYALE_HOME环境变量使编译器可用。
二、前置条件
2.1 更新软件源
sudo apt-get update
2.2 安装 JDK 11、Node.js、npm 与 Maven
Royale 编译器基于 Java 运行(JDK 11 即可),产物校验需要 Node.js,Maven 构建方案需要 Maven:
sudo apt-get install -y openjdk-11-jdk-headless nodejs npm maven curl
验证各组件版本:
node -v
npm -v
mvn -v | head -3
java -version
实测回显:
v12.22.9
8.5.1
Apache Maven 3.6.3; Maven home: /usr/share/maven; Java version: 11.0.32.1
openjdk version "11.0.32.1" 2026-08-18
💡 说明:仅使用 mxmlc 命令行编译而不做产物语法校验与 Maven 构建时,可省略 npm 与 Maven 两个包;本指南按完整工具链实测。
三、版本选型说明
通过 Apache 官方下载目录探测当前版本:
wget -q -O /tmp/royale_versions.html https://downloads.apache.org/royale/
grep -oE '[0-9]+\.[0-9]+\.[0-9]+' /tmp/royale_versions.html | sort -V | uniq
实测返回:
0.9.12
downloads.apache.org/royale/ 当前仅有 0.9.12 一个版本目录,即最新稳定版本。版本目录下提供多种二进制包,本指南使用面向 JavaScript 双目标的 bin-js 包(压缩包 171MB,含编译器、框架 SWC 与示例工程),其 sha512 校验和实测为:
0a8350f1b6047913c4e7a23b51f0cd706366189c7d60ffa922a198989b98565d55fc6db5611f37a1f1753f7d2ccac21ccab57df38c0a6cc69e4e48ef035573ae
四、下载与校验
4.1 下载 SDK
mkdir -p /opt/royale
cd /opt/royale
wget -q https://downloads.apache.org/royale/0.9.12/binaries/apache-royale-0.9.12-bin-js.tar.gz
ls -lh apache-royale-0.9.12-bin-js.tar.gz
实测回显:
-rw-r--r-- 1 root root 171M Oct 18 2024 apache-royale-0.9.12-bin-js.tar.gz
4.2 校验 sha512
cd /opt/royale
sha512sum apache-royale-0.9.12-bin-js.tar.gz
实测回显:
0a8350f1b6047913c4e7a23b51f0cd706366189c7d60ffa922a198989b98565d55fc6db5611f37a1f1753f7d2ccac21ccab57df38c0a6cc69e4e48ef035573ae apache-royale-0.9.12-bin-js.tar.gz
该值与官方 apache-royale-0.9.12-bin-js.tar.gz.sha512 一致,即下载完整无损。
五、解压与目录布局
cd /opt/royale
tar xzf apache-royale-0.9.12-bin-js.tar.gz
ls /opt/royale/apache-royale-0.9.12-bin-js/
实测回显:
royale-asjs royale-typedefs
SDK 根目录 /opt/royale/apache-royale-0.9.12-bin-js/ 下关键目录:
| 目录 | 内容 |
|---|---|
royale-asjs/ | 框架源码 + 编译器 jar(lib/compiler-mxmlc.jar 等)+ js/bin/{mxmlc,asjsc,asnodec,compc,externc} 编译脚本 |
royale-asjs/frameworks/ | royale-config.xml / js-config.xml / node-config.xml 配置文件 + js/libs/*.swc(37 个框架 SWC) |
royale-asjs/examples/ | 官方示例工程(royale/HelloWorld、node/HelloWorld 等) |
royale-typedefs/ | JS/Node 类型定义 |
六、环境变量配置
编译器脚本依赖 ROYALE_HOME 定位 SDK(注意指向 royale-asjs 子目录而非 SDK 根目录):
export ROYALE_HOME=/opt/royale/apache-royale-0.9.12-bin-js/royale-asjs
export PATH=$ROYALE_HOME/js/bin:$PATH
写入 /etc/profile.d/royale.sh 使其对后续登录会话持久生效:
cat > /etc/profile.d/royale.sh <<'EOF'
export ROYALE_HOME=/opt/royale/apache-royale-0.9.12-bin-js/royale-asjs
export PATH=$ROYALE_HOME/js/bin:$PATH
EOF
chmod +x /etc/profile.d/royale.sh
七、安装验证
运行编译器帮助命令确认版本:
$ROYALE_HOME/js/bin/mxmlc --help
实测回显:
Apache Royale MXML and ActionScript Compiler (mxmlc)
Version 0.9.12 build 0
MXMLJSC
+royalelib=/opt/royale/apache-royale-0.9.12-bin-js/royale-asjs/frameworks
-sdk-js-lib=/opt/royale/apache-royale-0.9.12-bin-js/royale-asjs/frameworks/js/Royale/generated-sources
输出 Version 0.9.12 build 0 即安装成功。完整功能验证(编译示例应用、Node 目标运行)见《Apache Royale 0.9.12 构建并运行示例应用指南》篇。
八、注意事项
⚠️ 注意:
- Royale 编译器是 Java 进程,需 JDK 11(实测 11.0.32.1);编译器进程默认 JVM 堆上限为
-Xmx384m,属 256–512MB 合理区间,一般工程无需调整(调整方式见配置参数详解篇)。ROYALE_HOME必须指向royale-asjs子目录,指向 SDK 根目录会导致编译器无法定位royalelib与框架 SWC。bin-js包面向浏览器 JS 与 Node JS 双目标;若需编译 SWF(Flash)目标产物,请按官方发布目录选择其它形态的二进制包。- 首次使用 Maven 构建方案时需联网从 Maven Central 拉取框架 SWC 与编译器依赖,离线环境请提前准备本地仓库。
九、常见问题
Q1:downloads.apache.org 下载慢或无法访问怎么办?
可在任意 Apache 镜像站下载同路径文件(路径结构一致),或从内网分发点将压缩包拷入 /opt/royale 后按第五节解压,校验和与官方值一致即可。
Q2:sha512 校验不通过? 下载不完整或被篡改。重新下载后再次校验,确认结果与本文一致(压缩包 171MB);若镜像站文件与官方不同,请以官方目录文件为准。
Q3:mxmlc 报找不到 SDK / royalelib?
ROYALE_HOME 指向错误。按第六节改指 /opt/royale/apache-royale-0.9.12-bin-js/royale-asjs,并确认 PATH 中包含 $ROYALE_HOME/js/bin。
Q4:安装到普通用户目录可以吗?
可以,将解压目录放在用户家目录(如 /home/用户/apache-royale-0.9.12-bin-js),并把 ROYALE_HOME 指向该目录下的 royale-asjs 即可,无需 root。
十、卸载方式
移除 SDK 目录与环境变量配置:
rm -rf /opt/royale/apache-royale-0.9.12-bin-js
rm -f /etc/profile.d/royale.sh
并清除当前会话中导出的 ROYALE_HOME 与 PATH 追加项:
unset ROYALE_HOME
若同时移除 Node.js、npm 与 Maven 工具链:
sudo apt-get remove -y nodejs npm maven
sudo apt-get autoremove -y
十一、参考链接
- Apache Royale 官方下载目录:
https://downloads.apache.org/royale/ - Apache Royale 版本归档:
https://archive.apache.org/dist/royale/ - Apache Royale 官方文档:
https://royale.apache.org/