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
·
jenv avatar

jenv/jenv

0
View on GitHub↗
6,621 stars·398 forks·Shell·MIT·2 vueswww.jenv.be↗

Jenv

Manage your Java environment

Features

  • JDK Version Managers - Switches the active JDK version globally by updating JAVA_HOME for all shell sessions.
  • Per-Directory Version Selectors - Sets JAVA_HOME automatically when entering a specific project directory, isolating JDK versions by project.
  • Global Version Switchers - Sets the default Java version for the entire system by updating the JAVA_HOME environment variable.
  • Runtime Version Switching - Switches between installed Java versions globally, per directory, or per shell session to match project requirements.
  • Shell Hook Integrations - Hooks into shell directory-change events to automatically switch Java versions based on project configuration.
  • Java Environments - Manages multiple Java versions and switches between them globally, per directory, or per shell session.
  • Per-Directory Version Selectors - Automatically selects a Java version when entering a project directory using .java-version files.
  • Shim-Based Command Interception - Intercepts Java commands through symbolic link shims in the PATH to redirect execution to the selected Java version.
  • Session Version Switchers - Sets JAVA_HOME for the current shell session only, allowing temporary JDK changes without affecting other terminals.
  • Java Home Overrides - Sets JAVA_HOME and related environment variables to control which Java runtime is used by tools and scripts.
  • Java Version Selectors - Uses .java-version files in project directories to automatically activate the specified Java version on directory entry.
  • Directory-Based Version Resolution - Automatically selects a Java version when entering a specific project directory.
  • Java - Configures a specific Java version to be used automatically when working inside a particular directory.
  • Directory-Aware Selectors - Automatically selects a Java version when entering a project directory using .java-version files.
  • JDK Registration Tools - Registers existing JDK installations so they become available for version switching.
  • Symbolic Link Managers - Maintains and repairs a set of symbolic links in a central shims directory to represent the active Java version.
  • Session Version Managers - Changes the active Java version for the current terminal session without affecting other sessions.
  • Java Environment Plugins - Loads optional plugins from a plugins directory to add commands like version diagnosis and symlink repair.
  • Version Managers - Java version manager with global or per-project configuration.

Historique des stars

Graphique de l'historique des stars pour jenv/jenvGraphique de l'historique des stars pour jenv/jenv

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 à Jenv

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Jenv.
  • 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
  • sdkman/sdkman-cliAvatar de sdkman

    sdkman/sdkman-cli

    6,791Voir sur GitHub↗

    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

    Shell
    Voir sur GitHub↗6,791
  • pyenv-win/pyenv-winAvatar de pyenv-win

    pyenv-win/pyenv-win

    7,006Voir sur GitHub↗

    pyenv-win is a version manager for Windows that enables the installation and switching of multiple Python versions without affecting the system global installation. It functions as a multi-version installer and environment controller that ensures isolation and reproducibility across different projects. The tool uses a shim-based routing system to intercept executable calls and direct them to specific versioned binaries. This allows for both system-wide default configurations and local directory-level overrides, where a specific version is automatically activated when entering a project folder

    VBScriptpyenvpyenv-alternativepyenv-for-windows
    Voir sur GitHub↗7,006
  • creationix/nvmAvatar de creationix

    creationix/nvm

    93,948Voir sur GitHub↗

    nvm is a Node.js version manager implemented as a POSIX bash script. It serves as a shell environment manager and runtime orchestrator for installing, switching, and managing multiple versions of the Node.js runtime on POSIX systems. The tool allows for the automation of runtime switching by reading configuration files in project directories to select the required version. It supports the management of long-term support releases and the migration of global packages between different installed versions of the runtime. The project covers broader capabilities including runtime management throug

    Shell
    Voir sur GitHub↗93,948
Voir les 30 alternatives à Jenv→

Questions fréquentes

Que fait jenv/jenv ?

Manage your Java environment

Quelles sont les fonctionnalités principales de jenv/jenv ?

Les fonctionnalités principales de jenv/jenv sont : JDK Version Managers, Per-Directory Version Selectors, Global Version Switchers, Runtime Version Switching, Shell Hook Integrations, Java Environments, Shim-Based Command Interception, Session Version Switchers.

Quelles sont les alternatives open-source à jenv/jenv ?

Les alternatives open-source à jenv/jenv incluent : rbenv/rbenv — rbenv is a Ruby version manager and shell environment manager designed to install, switch between, and manage multiple… sdkman/sdkman-cli — SDKMAN is a command-line utility for installing, tracking, and managing multiple versions of software development kits… creationix/nvm — nvm is a Node.js version manager implemented as a POSIX bash script. It serves as a shell environment manager and… pyenv-win/pyenv-win — pyenv-win is a version manager for Windows that enables the installation and switching of multiple Python versions… version-fox/vfox — Vfox is a command-line utility designed to manage multiple programming language runtimes and development tools on a… xcodesorg/xcodes — xcodes is a command-line utility for macOS toolchain administration, specifically designed for the installation and…