As developers, we often need to work with different versions of programming languages and frameworks. This post covers version management tools for several popular technologies.
Java
For linux/macOS users, you can use the built-in java_home
utility:
/usr/libexec/java_home -V
export JAVA_HOME=`/usr/libexec/java_home -v 1.6.0_65-b14-462`
NodeJS
nvm (Node Version Manager) is a popular tool for managing Node.js versions:
nvm use 20.12.2
Python
uv is a modern Python package manager and version manager.
uv venv --python 3.12.0
Flutter
fvm (Flutter Version Management) is an excellent tool for managing Flutter SDK versions.
fvm use 2.10.0
Special thanks to Silas for sharing this awesome tool!
Rust
Rust uses rustup as its official toolchain manager. It allows you to easily switch between different versions of Rust:
rustup install 1.68.0
rustup default 1.68.0
Conclusion
That’s it