| Crates.io | uvm |
| lib.rs | uvm |
| version | 0.1.0-alpha.10 |
| created_at | 2024-02-16 09:16:48.441572+00 |
| updated_at | 2024-02-17 03:19:56.868651+00 |
| description | Unified version manager, support Java, Golang, NodeJS. |
| homepage | |
| repository | https://github.com/jinyuli/uvm |
| max_upload_size | |
| id | 1142265 |
| size | 252,220 |
uvm(unified version manager) is a command-line tool for Linux, Windows and MacOS, it aims to provide convenient methods to manage multiple versions of development kit for various progamming languages.
update uvm to latest version:
$ uvm update
list all released versions of Golang:
$ uvm go list
list installed versions of Golang:
$ uvm go list --local
1.20.1
* 1.20.10
1.21.6
install Golang 1.21.6:
$ uvm go install -v 1.21.6
switch default global Golang version to 1.21.6:
$ uvm go use -v 1.21.6
switch default global Golang version to 1.21.6:
$ uvm go use -v 1.21.6
create a virtual environment with Golang 1.20.1 in current folder:
$ uvm go venv -v 1.20.1
by default this will create a folder named .venv
activiate virtual environment:
$ source ./.venv/activiate.sh
(go)$
deactiviate virtual environment:
$ source ./.venv/deactiviate.sh
$
Node has similar commands.
Java is a little different, each command must specify vendor with --vendor, currently supported vendors includs openjdk, corretto.
for example, install Java 20 from Amazon Corretto:
$ uvm java install -v 20 --vendor corretto
Thanks to tools like nvm, n, rvm, g, using-virtual-environments for providing valuable ideas.