Skip to content

wtcpython/kopi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

kopi

A fast, cross-platform JVM toolchain manager written in Rust.

Features

  • Install any JDK version from Foojay with a single command
  • Switch between installed JDK versions instantly via symlinks
  • Uninstall JDKs cleanly, with automatic current-link fallback
  • List locally installed Java versions
  • Cross-platform — Linux, macOS (Intel + Apple Silicon), and Windows

Installation

Download the latest binary from Releases for your platform, or build from source:

cargo build --release

Usage

# Install a JDK (defaults to Eclipse Temurin)
kopi install 21

# Install a specific distribution
kopi install 17 -d openjdk

# Switch the active JDK
kopi use 21

# List installed Java versions
kopi list

# Uninstall a JDK
kopi uninstall 17

After installing, add these lines to your shell profile to activate kopi-managed Java:

export JAVA_HOME="$HOME/.kopi/jdks/current"
export PATH="$JAVA_HOME/bin:$PATH"

Supported Distributions

Any distribution available through the Foojay Disco API, including:

Development

Prerequisites

  • Rust stable (install via rustup)

Build

cargo build

Test

cargo test

Lint

cargo fmt --all -- --check
cargo clippy --all-targets --all-features -- -D warnings

Internationalization

Translation files live in locales/. Add new translations by creating a new locale file following the rust-i18n YAML format.

License

MIT — see LICENSE for details.

About

A fast, cross-platform JVM toolchain manager written in Rust

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages