## Requeriments - [Download JDK](https://jdk.java.net/archive/) ## Guide > [!NOTE] > Change the jdk.gz filename or folder name, based in your verion JDK downloaded as example I use the jdk-20.0.1 **Preparing Artefacts** 1. Access the official JDK website and Download a version available or compatible with your project 2. Extract with `tar -xvf jdk-20.0.1.tar.gz` 3. Move extracted folder`sudo mv jdk-20.0.1 /opt/` **Configuring global binaries** 1. Create symbolic link appointing to jdk binaries ```sh sudo ln -s /opt/jdk-20/bin/java /usr/bin/java sudo ln -s /opt/jdk-20/bin/javac /usr/bin/javac ``` 2. Or configure manually the env variable `JAVA_HOME` in `$HOME/.config/config.fish` ```fish set -x JAVA_HOME /opt/jdk-20.0.1 set -x PATH $JAVA_HOME/bin $PATH ``` > [!IMPORTANT] > If your default shell is `zsh` or `bash`, is need change the syntax and edit the respectives files `.zshrc` or `.bashrc` 3. Reload shell `source $HOME/.config/config.fish` ```sh # zsh source $HOME/.zshrc # bash source $HOME/.bashrc ``` 4. Test `java -version` Output: ```sh openjdk version "20.0.1" 2023-04-18 OpenJDK Runtime Environment (build 20.0.1+9-29) OpenJDK 64-Bit Server VM (build 20.0.1+9-29, mixed mode, sharing) ```