awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
jenv avatar

jenv/jenv

0
View on GitHub↗
6,621 estrellas·398 forks·Shell·MIT·2 vistaswww.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.

Historial de estrellas

Gráfico del historial de estrellas de jenv/jenvGráfico del historial de estrellas de jenv/jenv

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Alternativas open-source a Jenv

Proyectos open-source similares, clasificados según cuántas características comparten con Jenv.
  • rbenv/rbenvAvatar de rbenv

    rbenv/rbenv

    16,710Ver en 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
    Ver en GitHub↗16,710
  • sdkman/sdkman-cliAvatar de sdkman

    sdkman/sdkman-cli

    6,791Ver en 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
    Ver en GitHub↗6,791
  • pyenv-win/pyenv-winAvatar de pyenv-win

    pyenv-win/pyenv-win

    7,006Ver en 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
    Ver en GitHub↗7,006
  • creationix/nvmAvatar de creationix

    creationix/nvm

    93,948Ver en 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
    Ver en GitHub↗93,948
Ver las 30 alternativas a Jenv→

Preguntas frecuentes

¿Qué hace jenv/jenv?

Manage your Java environment

¿Cuáles son las características principales de jenv/jenv?

Las características principales de jenv/jenv son: 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.

¿Qué alternativas de código abierto existen para jenv/jenv?

Las alternativas de código abierto para jenv/jenv incluyen: 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…