#版本 #版本管理器 #golang #java #nodejs #统一 #已安装

已删除 uvm

统一版本管理器,支持 Java、Golang、NodeJS

7 个版本

0.1.0 2024年2月16日
0.1.0-alpha.102024年2月17日

55#版本管理器

Download history 13/week @ 2024-03-12

91 每月下载量

MIT 协议

160KB
4.5K SLoC

UVM

uvm(统一版本管理器) 是一个适用于 Linux、Windows 和 MacOS 的命令行工具,旨在为各种编程语言提供方便的管理多个开发工具版本的方法。

安装

功能

Golang

  • 列出 所有已发布版本。
  • 列出 本地已安装版本。
  • 安装 一个已发布版本。
  • 使用 一个已安装版本。
  • 在工作区中创建一个虚拟环境(venv)。
  • 卸载 一个已安装版本。

Node

  • 列出 所有已发布版本。
  • 列出 本地已安装版本。
  • 安装 一个已发布版本。
  • 使用 一个已安装版本。
  • 在工作区中创建一个虚拟环境(venv)。
  • 卸载 一个已安装版本。

Java

  • 支持 OpenJDKAmazon Corretto
  • 列出 所有已发布版本。
  • 列出 本地已安装版本。
  • 安装 一个已发布版本。
  • 使用 一个已安装版本。
  • 在工作区中创建一个虚拟环境(venv)。
  • 卸载 一个已安装版本。

用法

更新 uvm 到最新版本

$ uvm update

列出 Golang 的所有已发布版本

$ uvm go list

列出 Golang 的已安装版本

$ uvm go list --local
  1.20.1
* 1.20.10
  1.21.6

安装 Golang 1.21.6

$ uvm go install -v 1.21.6

将默认全局 Golang 版本切换到 1.21.6

$ uvm go use -v 1.21.6

将默认全局 Golang 版本切换到 1.21.6

$ uvm go use -v 1.21.6

在当前文件夹中创建一个使用 Golang 1.20.1 的虚拟环境

$ uvm go venv -v 1.20.1

默认情况下,这将创建一个名为 .venv 的文件夹

激活虚拟环境

$ source ./.venv/activiate.sh
(go)$

取消激活虚拟环境

$ source ./.venv/deactiviate.sh
$

Node 有类似的命令。

Java 略有不同,每个命令都必须指定供应商 --vendor,目前支持的供应商包括 openjdkcorretto

例如,从 Amazon Corretto 安装 Java 20

$ uvm java install -v 20 --vendor corretto

待办事项

  • uvm 的配置
  • 支持镜像
  • 支持更多语言
  • 下载文件时显示进度
  • 支持更多 shell 的 venv

致谢

感谢 nvmnrvmgusing-virtual-environments 等工具提供有价值的想法。

依赖项

~32–50MB
~866K SLoC