可安装的工具与来源

myEnv 根据上游目录选择当前平台的安装包,不维护一张静态的“全部版本”名单。以下范围以目录仍提供兼容制品为前提,不能理解为所有历史版本均已验证。

工具与来源可以怎样选择
Java:Eclipse TemurinHotSpot JDK x64。可选 8、11、17、21、25 等目录提供的主版本,或完整发行名(如 jdk-21.0.12.1+1、jdk8u462-b08)。不包含其他厂商、OpenJ9 或 JRE。
Node:Node.js 官方归档当前平台有归档的版本;支持 22、22.23、22.23.2 等版本族、完整版本和范围。附带该归档的 npm/npx。
Python:Astral CPython(默认)固定 uv 0.11.26 目录中的默认 CPython 变体;支持 3.12、3.14 等版本族、完整版本和范围。该目录可能落后于 Python 官网。
Python:python.org(可选)仅 Windows 完整 x64 runtime ZIP;排除嵌入式、free-threaded 和测试变体。使用 --provider python.org,不运行 EXE/MSI。
Go:Go 官方归档当前平台 amd64 归档中的版本族或完整版本,如 1.26、1.26.6;历史精确名称可加 =,如 go@=1.2。
Rust:Rust 官方归档完整工具链的版本族或完整稳定版,如 1.98、1.98.0。Windows 使用 x86_64-pc-windows-msvc,Linux 使用 x86_64-unknown-linux-gnu。

查询后安装

myenv versions java --major 21
myenv versions node --search 22
myenv versions go --search 1.26
myenv versions rust --search 1.98

Java 的 --major 只是缩小查询;换成 8、17、25 等即可查询其他主版本。复制查询中的完整版本可固定到具体发行。下面演示当前用户默认环境;项目内将 system install 换成 use。

myenv system install java@21
myenv system install node@22
myenv system install go@1.26
myenv system install rust@1.98
myenv run --global java -version

Python 的两种来源

myenv system install python@3.12 --provider astral
myenv run --global python --version

Windows 还可查询并安装官网包:

myenv versions python --provider python.org
myenv system install python@3.14 --provider python.org

来源随声明保存,不会静默替换。Windows/Linux 的 versions python 默认查询 Astral,与默认安装一致;查询复用已有固定 uv,不隐式下载。选择官网包须显式保留 --provider python.org;Linux 官网查询仅提供发布记录,尚无 python.org 二进制或源码构建后端。

稳定版、预览版与锁定

普通版本族只选择稳定版。Node/Python 另支持比较范围;Node 支持 ^、~,Python 支持 ~=。Java/Go/Rust 使用版本族或完整名称,不支持这类比较表达式。

myenv versions java --major 26 --preview
myenv versions node --preview
myenv versions go --preview
myenv versions rust --channel nightly --date 2026-09-09
myenv use rust@nightly-2026-09-09

Node nightly/rc/v8-canary、Python a/b/rc、Temurin EA 和 Go beta/rc 须指定完整预览名;Rust 支持 beta、nightly 及日期渠道。--preview 扩展查询,不自动升级环境。Rust 没有全部历史 nightly 索引,指定日期的制品也可能缺失。成功同步后以 myenv.lock 记录的精确结果为准。

平台与已验证样本

0.1.0 提供 Windows amd64 CLI/TUI/GUI 与原生 Linux amd64/glibc CLI/TUI;Linux GUI 暂缓,WSL TUI 门禁仍在,macOS、musl 和 ARM 暂不支持。Windows 需要 Windows 10/Server 2016 或更新版本;GUI 还需 WebView2。Linux TTY 需要允许 pidfd 系统调用,通常为 Linux 5.3 及以上。上游运行时自身的系统要求仍须满足。

已有验证记录包含 Node 22.23.2、Astral Python 3.12.13,以及 Windows/Kali 的 Temurin jdk-21.0.12.1+1、Go 1.26.6、Rust 1.98.0。Windows 官网 Python 3.14.7 与部分预览版、Kali 日期 Rust nightly 也有定向验证。这些是实测样本,不是所有可选版本或所有操作系统的兼容承诺;0.1.0 仍有未达性能预算的项目。GUI 包写操作的真实闭环限 Windows 隔离样本,Linux 包管理已有离线核心回归,尚无真实包写操作闭环。

编译依赖与外部环境

Windows 托管 Rust 默认使用包内 LLD;自定义链接配置优先,也可用 run --rust-linker system 选择系统流程。Rust 原生依赖仍可能需要 MSVC 与 Windows SDK。Go 设置 GOTOOLCHAIN=local,运行时不隐式下载其他工具链。

C/C++ 仅检测并提供官方安装指引。外部 uv、rustup、Conda 的操作须核验原管理器和目标;Conda base 受保护,Conda 尚无真实安装验收,rustup 不支持强制 repair。myEnv 不自动安装 Anaconda。

开发 myEnv 本身

使用发行包无需预装 Go 或 Node。从源码构建 CLI 使用 go.mod 固定的 Go 1.26.6;开发文档站使用 Node ≥22.13.0。它们是项目构建要求,与上面的受管工具版本范围相互独立。