🎉 Arcadia 1.0.0-beta.8(现已发布)
Arcadia

运行环境

本部分文档用于指导代码文件运行环境配置,如果你对相关技术不是很熟悉那么请认真阅读以下内容

安装语言环境

TypeScript Execute (tsx) 是 Arcadia 平台运行 TypeScript 代码文件的默认执行器(引擎),它基于 esbuild 驱动,运行速度非常快。

安装命令
npm install -g tsx

官方网站

Deno 是一个现代的 JavaScript 和 TypeScript 运行时环境,具有安全性高、高性能网络、运行速度快等特点。默认采用沙盒机制,禁止脚本程序访问文件系统、网络和环境变量等敏感操作,除非显式授予权限。

Deno 一般无法直接运行 Node.js 原生项目,因为它导入包(库)的语法与 Node.js 不兼容。
由于沙箱下的默认权限不能满足项目基本需求,因此使用 Deno 时会默认赋予一些权限,具体如下:

  • 环境变量:允许全部
  • 文件系统:仅允许读/写代码文件所在目录和其下级目录。
  • 网络访问:允许联网,但禁止访问本机
安装命令
# 建议分步执行以下命令
apt-get update && apt-get install -y unzip
curl -fsSL https://deno.land/install.sh | sh # 失败时请自行解决网络环境等问题
bash
ln -sf $(which deno) /usr/local/bin/deno

建议采用官方默认提供的安装方法,另外如果你通过其它方法安装那么需要在处理 PATH 时设置 /usr/local/bin 的软链接(参考最后一行示例命令)

官方网站

Bun 是一个现代的 JavaScript 和 TypeScript 运行时环境,专为速度而设计,运行速度极快、几乎完全兼容 Node.js API,可直接运行 Node.js 项目。

安装命令
# 建议分步执行以下命令
apt-get update && apt-get install -y unzip
curl -fsSL https://bun.sh/install | bash # 失败时请自行解决网络环境等问题
bash
ln -sf $(which bun) /usr/local/bin/bun

建议采用官方默认提供的安装方法,另外如果你通过其它方法安装那么需要在处理 PATH 时设置 /usr/local/bin 的软链接(参考最后一行示例命令)

官方网站

ts-node 是一个运行 TypeScript 代码文件的执行器(引擎),诞生较早,相比 tsx 它的兼容性会更高,不过性能会差很多。

安装命令
npm install -g typescript ts-node

官方网站

已预装,底层功能依赖请勿卸载,否则会导致项目无法正常运行

安装命令
NODE_VERSION=24 # 指定安装版本(可自行修改)
apt-get update && apt-get install -y ca-certificates curl gnupg
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_${NODE_VERSION}.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list
apt-get update && apt-get install nodejs -y

Node.js 是 Arcadia 平台默认的 JavaScript 运行时环境,同时也是驱动 Arcadia 后端运行的核心依赖,默认安装的是最新的 LTS 版本,需要安装指定版本时可借鉴该命令

官方网站

已预装,底层功能依赖请勿卸载,否则会导致项目无法正常运行

安装命令
apt-get update && apt-get install -y python3 python3-pip

若想安装指定版本请自行搜索相关教程,重装后需要执行 pip3 install yq --no-cache-dir --break-system-packages 安装 yq 依赖库(底层功能需要)

官方网站

安装命令
apt-get update && apt-get install -y go

官方网站

安装命令
apt-get update && apt-get install -y lua5.4 luarocks

官方网站

安装命令
apt-get update && apt-get install -y ruby

官方网站

安装命令
# 建议分步执行以下命令
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh # 失败时请自行解决网络环境等问题
bash
ln -sf $(which rustc) /usr/local/bin/rustc
ln -sf $(which cargo) /usr/local/bin/cargo
cargo install cargo-script # 失败时请自行解决网络环境等问题

建议采用官方默认提供的安装方法,因为通过 apt 包管理工具安装的版本较低,另外如果你通过其它方法安装那么需要在处理 PATH 时设置 /usr/local/bin 的软链接

官方网站

已预装,底层功能依赖请勿卸载,否则会导致项目无法正常运行

安装命令
apt-get update && apt-get install -y perl

官方网站

已预装,底层功能依赖请勿卸载,否则会导致项目无法正常运行

安装命令
apt-get update && apt-get install -y gcc

解决依赖

适用文件类型 .js .mjs .cjs.ts

安装命令
npm install -g <xxx>

当运行报错提示 need module xxx 类似字样说明缺少代码运行所需的依赖,对应 xxx 的位置就是缺失的依赖名称
如果依赖名称中开头为 / 则表示本地模块文件,否则一般为 NPM 上的第三方库

默认命令 npm install <xxx> 安装的依赖库的位置是相对,可以解决代码使用不同版本依赖库的问题
使用 -g 命令选项代表全局安装即不需要解决目录关系,因为一般来说这样安装更省事,例如 npm install -g axios

当然,你也可以使用 pnpmyarn 等包管理工具,使用 Bun 时建议使用官方的 bun add 命令

适用文件类型 .py

安装命令
pip3 install <xxx> --no-cache-dir --break-system-packages

适用文件类型 .go

安装命令
go get -u xxx

适用文件类型 .lua

安装命令
luarocks install <xxx>

适用文件类型 .rb

安装命令
gem install <xxx>

适用文件类型 .rs

    1. Cargo.toml 文件中添加依赖:
    [dependencies]
    <xxx> = "<version>"
    1. 运行以下命令安装依赖:
    cargo build

    或者仅安装依赖而不构建项目:

    cargo check

适用文件类型 .pl .pm,建议使用 cpanm,安装命令 cpan App::cpanminus

安装命令
cpanm <xxx>