Skip to content

Installation

Danny Thomas edited this page Sep 17, 2026 · 1 revision

Installation

Note

Netflix engineers should use the internally bundled toolchain rather than installing ja or its tools separately.

Make a JDK 25 or later available through JAVA_HOME, PATH, or an environment manager such as jenv.

On macOS and Linux:

curl -fsSL https://raw.githubusercontent.com/Netflix/ja/main/install.sh | bash

On Windows PowerShell:

irm https://raw.githubusercontent.com/Netflix/ja/main/install.ps1 | iex

The default installation is discoverable by common development tools. On macOS it is a user JDK bundle under ~/Library/Java/JavaVirtualMachines. On Linux and Windows it is under ~/.jdks, following the IntelliJ IDEA convention also recognized by Gradle.

The installer does not modify shell configuration. It prints activation steps matching the way the source JDK was selected, including jenv, SDKMAN!, JAVA_HOME, or PATH. The steps also add ~/.local/bin when needed so commands created by ja install are available, and show how to enable completions for ja and the bundled tools.

Pass an output directory to use a custom location instead:

curl -fsSL https://raw.githubusercontent.com/Netflix/ja/main/install.sh |
  bash -s -- /path/to/output
& ([scriptblock]::Create((irm https://raw.githubusercontent.com/Netflix/ja/main/install.ps1))) `
  -Output C:\path\to\output

Set JA_VERSION on macOS and Linux, or pass -JaVersion on Windows, to install an exact version instead of the latest release:

curl -fsSL https://raw.githubusercontent.com/Netflix/ja/main/install.sh |
  JA_VERSION=0.17.0 bash
& ([scriptblock]::Create((irm https://raw.githubusercontent.com/Netflix/ja/main/install.ps1))) `
  -JaVersion 0.17.0

Take ja for a spin by installing an application:

$ ja install com.github.ricksbrown.cowsay@1.1.0
$ cowsay 'Holy cow, Java modules!'
 _________________________
< Holy cow, Java modules! >
 -------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||

Clone this wiki locally