awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
sdkman avatar

sdkman/sdkman-cli

0
View on GitHub↗
6,791 stars·644 forks·Shell·Apache-2.0·9 vuessdkman.io↗

Sdkman Cli

SDKMAN is a command-line utility for installing, tracking, and managing multiple versions of software development kits on Unix systems. It functions as a software installer and environment manager that automates the downloading and configuration of development tools for Linux and macOS.

The tool enables the installation of parallel SDK versions on a single system and provides the capability to toggle between them to change the active environment for a shell session. It specifically facilitates the setup of Java development environments, including the management of various Java Development Kit versions.

The system manages software lifecycles by utilizing remote manifests for version metadata and employing symbolic links and environment variable modifications to handle version switching.

Features

  • Shell Environment Managers - Provides a shell-based utility to maintain separate development environments by toggling active SDK versions for the current session.
  • Path-Based Version Switchers - Manages active software versions by dynamically modifying the system PATH environment variable.
  • Runtime Version Switching - Toggles between installed versions of a software development kit to change the active environment for the current shell session.
  • Version Managers - Provides capabilities for installing, removing, and listing multiple versions of software development kits on Unix systems.
  • Manifest-Driven Installations - Fetches version metadata and installation URLs from remote JSON-like configuration manifests to update available packages.
  • Java Environments - Configures the necessary build tools and runtimes for Java projects through a single command line interface.
  • Version Managers - Installs and switches between different Java Development Kit versions to support projects with varying runtime requirements.
  • Symlink-Based Version Switching - Updates a single pointer link to a specific version folder to change the active SDK for the current user.
  • Installation Automation Tools - Automates the downloading and configuration of development kits and tools on Linux and macOS.
  • Local SDK Versioning - Stores downloaded SDKs in a hidden home directory hierarchy separated by candidate name and version number.
  • Toolchain Lifecycle Management - Manages the installation and lifecycle of various development kits and tools across different shell sessions.
  • Shells & Scripting - Executes all logic via a Bourne-compatible shell script to ensure compatibility across diverse Unix-like environments.
  • Multi-Version Installations - Maintains multiple versions of software development kits on a single Unix system without creating version conflicts.
  • Version Managers - Java version manager for UNIX-based platforms and Windows.

Historique des stars

Graphique de l'historique des stars pour sdkman/sdkman-cliGraphique de l'historique des stars pour sdkman/sdkman-cli

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Sdkman Cli

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Sdkman Cli.
  • version-fox/vfoxAvatar de version-fox

    version-fox/vfox

    3,910Voir sur GitHub↗

    Vfox is a command-line utility designed to manage multiple programming language runtimes and development tools on a single machine. It provides a unified interface for installing, switching, and configuring software versions across different operating systems, ensuring consistent development environments. The project distinguishes itself through a modular, plugin-based architecture that allows for the integration of diverse language runtimes and utilities beyond built-in defaults. It utilizes a combination of shim-based execution, symlink management, and dynamic shell-hook environment injecti

    Goasdfbashcli
    Voir sur GitHub↗3,910
  • rbenv/rbenvAvatar de rbenv

    rbenv/rbenv

    16,710Voir sur GitHub↗

    rbenv is a Ruby version manager and shell environment manager designed to install, switch between, and manage multiple versions of the Ruby programming language. It functions as a project runtime isolator and an extensible versioning framework that ensures the correct Ruby binaries are executed based on the current context. The system uses a shim-based command interception model to resolve the active version before delegating execution to the binary. It allows for locking specific Ruby versions and environment variables to individual directories, ensuring project environment isolation. The ar

    Shellbashrubyruby-installation
    Voir sur GitHub↗16,710
  • moovweb/gvmAvatar de moovweb

    moovweb/gvm

    11,645Voir sur GitHub↗

    Gvm is a Go version manager, environment orchestrator, and dependency isolator. It provides a system for installing, removing, and switching between different versions of the Go programming language on a single machine. The tool manages native dependencies and creates isolated package sets to prevent version conflicts between different project environments. It uses environment variable overlays and directory isolation to link native code without modifying the host operating system. The software covers the full language lifecycle, including remote version cataloging, active version switching,

    Shelldependency-managergolang
    Voir sur GitHub↗11,645
  • volta-cli/voltaAvatar de volta-cli

    volta-cli/volta

    13,009Voir sur GitHub↗

    Volta is a cross-platform toolchain orchestrator and JavaScript toolchain manager. It functions as a version manager for Node.js and related package managers, allowing for the installation and coordination of multiple runtimes across a system. The project operates as a project-based version switcher, automatically detecting and switching to the required tool versions based on the current directory. This ensures environment consistency across different developer machines by resolving versions through project configuration.

    Rustnodenodejspackage-manager
    Voir sur GitHub↗13,009
Voir les 30 alternatives à Sdkman Cli→

Questions fréquentes

Que fait sdkman/sdkman-cli ?

SDKMAN is a command-line utility for installing, tracking, and managing multiple versions of software development kits on Unix systems. It functions as a software installer and environment manager that automates the downloading and configuration of development tools for Linux and macOS.

Quelles sont les fonctionnalités principales de sdkman/sdkman-cli ?

Les fonctionnalités principales de sdkman/sdkman-cli sont : Shell Environment Managers, Path-Based Version Switchers, Runtime Version Switching, Version Managers, Manifest-Driven Installations, Java Environments, Symlink-Based Version Switching, Installation Automation Tools.

Quelles sont les alternatives open-source à sdkman/sdkman-cli ?

Les alternatives open-source à sdkman/sdkman-cli incluent : version-fox/vfox — Vfox is a command-line utility designed to manage multiple programming language runtimes and development tools on a… rbenv/rbenv — rbenv is a Ruby version manager and shell environment manager designed to install, switch between, and manage multiple… moovweb/gvm — Gvm is a Go version manager, environment orchestrator, and dependency isolator. It provides a system for installing,… volta-cli/volta — Volta is a cross-platform toolchain orchestrator and JavaScript toolchain manager. It functions as a version manager… sstephenson/rbenv — rbenv is a Ruby version manager and shell shim environment manager. It allows for the installation of multiple Ruby… creationix/nvm — nvm is a Node.js version manager implemented as a POSIX bash script. It serves as a shell environment manager and…