版本管理工具
使用goenv、pyenv、jenv 版本管理工具,完成在同一台机器上管理多个版本的运行环境,并实现灵活切换。
goenv
goenv 简介
功能:
- 安装多个 Go 版本;
- 切换系统(全局)Go 版本;
- 为特定目录(项目)指定特定 Go 版本;
- 支持 macOS、Linux(不支持 Windows)。
安装 goenv
- 下载goenv
1
2
3
4
5# Macos
brew install goenv
# Linux
git clone https://github.com/syndbg/goenv.git ~/.goenv - 配置环境
添加以下内容到你的 shell 配置文件(如 .bashrc、.zshrc、.profile 等):
1
2
3
4
5
6# goenv
export GOENV_ROOT="$HOME/.goenv"
export PATH="$GOENV_ROOT/bin:$PATH"
if command -v goenv >/dev/null; then
eval "$(goenv init -)"
fi
使用 goenv
安装 Go 版本
1
2goenv install -l # 查看可用的版本
goenv install 1.20.10 # 安装指定版本首次使用 goenv 安装版本时,goenv 会下载源码并编译,所以可能较慢。
国内网络如果下载不下来
可以通过阿里云开源镜像下载安装包 https://mirrors.aliyun.com/golang
1
2
3mkdir -p ~/.goenv/cache/
cp go1.20.10.src.tar.gz ~/.goenv/cache/ # 将安装包放入缓存目录,例如版本为1.20.10
goenv install 1.20.10设置默认(全局) Go 版本
1
goenv global 1.20.10
查看当前使用的 Go 版本
1
2
goenv version查看所有已安装的 Go 版本
1
goenv versions
卸载 Go 版本
1
goenv uninstall 1.19.5
常用命令
命令 | 作用 |
---|---|
goenv versions | 查看当前系统所有可用版本(已安装的) |
goenv install –list | 查看所有支持安装的版本 |
goenv install |
安装某个版本(需要安装 goenv-install 插件) |
goenv uninstall |
卸载指定版本 |
goenv global |
设置全局使用版本 |
goenv local |
设置当前目录使用版本(写入 .go-version 文件) |
goenv shell |
设置当前 shell 会话使用的版本(临时) |
goenv rehash | 重建 shim 目录(很少需要手动用) |
goenv which go | 查看当前版本 go 的真实路径 |
goenv whence go | 查看哪个版本中有 go 命令 |
jenv
jenv 简介
- 项目地址:https://github.com/jenv/jenv
- 功能:
- 安装并管理多个 Java(JDK)版本;
- 设置系统(全局)默认 JDK 版本;
- 为特定项目(目录)指定特定 JDK 版本;
- 支持 macOS 和 Linux(不支持 Windows);
- 支持与 IDE(如 IntelliJ IDEA)集成。
安装 jenv
- 下载 jenv
1 |
|
- 配置环境变量
将以下内容添加到你的 shell 配置文件(如 .bashrc、.zshrc、.profile 等):
1 |
|
然后执行以下命令使配置生效:
1 |
|
- 可选插件启用
1 |
|
添加 JDK 到 jenv 管理
jenv 本身不下载 JDK,只管理你本机已有的 JDK。
你可以使用系统包管理器或官网下载 JDK,然后通过以下方式添加:
1 |
|
例如:
1 |
|
使用 jenv
查看所有已添加的 JDK
1
jenv versions
设置全局(系统默认) JDK 版本
1
jenv global 17
为当前 shell 会话设置临时 JDK 版本
1
jenv shell 11
为当前目录设置特定 JDK 版本
1
2jenv local 21
# 会在当前目录生成一个 .java-version 文件查看当前正在使用的 JDK 版本
1
jenv version
查看当前 java 命令对应的真实路径
1
jenv which java
重建 jenv shim(很少需要)
1
jenv rehash
常用命令
命令 | 作用 |
---|---|
jenv versions | 查看当前系统所有可用版本(已添加) |
jenv add <路径> | 将已安装的 JDK 添加到 jenv 中管理 |
jenv global <版本号> | 设置全局使用的 JDK 版本 |
jenv local <版本号> | 设置当前目录使用的 JDK 版本(项目) |
jenv shell <版本号> | 设置当前 shell 会话使用的 JDK(临时) |
jenv version | 查看当前使用的 JDK 版本 |
jenv which java | 查看当前 JDK java 命令的真实路径 |
jenv rehash | 重新生成 jenv 的 shim 脚本 |
jenv enable-plugin <插件名> | 启用 jenv 插件(如 maven) |
pyenv
pyenv 简介
功能:
- 安装多个 Python 版本;
- 切换系统(全局)Python 版本;
- 为特定目录(项目)指定特定 Python 版本;
- 支持 macOS、Linux(不支持 Windows,Windows 用户请使用 pyenv-win)。
安装 pyenv
- 安装 pyenv
1 |
|
- 配置环境变量
添加以下内容到你的 shell 配置文件(如 .bashrc、.zshrc、.profile 等):
1 |
|
- 重启终端或执行 source ~/.bashrc 等,使配置生效。
使用 pyenv
- 安装 Python 版本
1 |
|
国内网络环境如下载较慢,可考虑使用国内镜像,如清华源:
1 |
|
设置默认(全局) Python 版本
1
pyenv global 3.10.13
设置当前目录(项目)使用特定版本
1
pyenv local 3.10.13 # 会在当前目录生成 `.python-version` 文件
设置当前 shell 会话使用的版本(临时生效)
1
pyenv shell 3.10.13
查看当前使用的 Python 版本
1
pyenv version
查看所有已安装的 Python 版本
1
pyenv versions
卸载 Python 版本
1
pyenv uninstall 3.9.13
常用命令
命令 | 作用 |
---|---|
pyenv versions | 查看已安装的 Python 版本(带 * 表示当前) |
pyenv install -l | 查看所有可安装的版本列表 |
pyenv install |
安装指定 Python 版本 |
pyenv uninstall |
卸载指定 Python 版本 |
pyenv global |
设置系统全局默认 Python 版本 |
pyenv local |
设置当前目录默认 Python 版本(生成 .python-version ) |
pyenv shell |
设置当前 shell 会话使用的版本(临时) |
pyenv rehash | 重建 shims 目录(一般安装新版本后自动执行) |
pyenv which python | 显示当前版本 Python 的完整路径 |
pyenv whence python | 显示哪些版本包含该命令(如 python, pip 等) |
版本管理工具
https://zhyyao.me/2025/05/26/system/envs/