Closed6

ArchLinux + fish shell にjenvを導入する

r4air4ai

READMEを読み進めると、なんかjenv doctorをしろと書いてあるのでする。

$ jenv doctor
[OK]    No JAVA_HOME set
[ERROR] Java binary in path is not in the jenv shims.
[ERROR] Please check your path, or try using /path/to/java/home is not a valid path to java installation.
        PATH : 私のPATHたち(省略)
[ERROR] Jenv is not loaded in your fish
[ERROR] To fix :        echo eval "$(jenv init -)" >> your profile

なんかエラーって出て怖いけど、とりあえずjenvが正常にインストールされていることが分かったのでこれで良いらしい。

r4air4ai

続いてjenv enable-plugin exportを実行する。私の環境だと、ディレクトリが存在しないよって怒られたので、手動でディレクトリを作った。

$ jenv enable-plugin export
ln: failed to create symbolic link '~/.jenv/plugins/export': No such file or directory
$ cd ~/.jenv
$ mkdir plugins
$ cd plugins
$ mkdir export
$ jenv enable-plugin export
export plugin activated
$ exec $SHELL -l
r4air4ai

続いてパスを通したり、 fish shell 用の設定を行う。

$ fish_add_path $HOME/.jenv/bin
$ echo 'status --is-interactive; and jenv init - | source' >> ~/.config/fish/config.fish
$ curl "https://raw.githubusercontent.com/jenv/jenv/master/fish/jenv.fish" > ~/.config/fish/functions/jenv.fish
$ curl "https://raw.githubusercontent.com/jenv/jenv/master/completions/jenv.fish" > ~/.config/fish/completions/jenv.fish
r4air4ai

続いて Java をインストールする。

yay -S jdk17-openjdk

https://wiki.archlinux.jp/index.php/Java

Java がインストールされてることを確認する

$ archlinux-java status
Available Java environments:
  java-17-openjdk
  java-19-openjdk (default)

$ ls /usr/lib/jvm
default@  default-runtime@  java-17-openjdk/  java-19-openjdk/

jenv に登録する

$ jenv add /usr/lib/jvm/java-17-openjdk
$ jenv add /usr/lib/jvm/java-19-openjdk

正常に jenv の初期設定が出来たか最後に確認する

$ jenv doctor
[OK]    No JAVA_HOME set
[OK]    Java binaries in path are jenv shims
[OK]    Jenv is correctly loaded

かんべき。

r4air4ai

jenv global: globalなjavaのバージョンを設定する

$ jenv global 17
$ java -version
openjdk version "17.0.6" 2023-01-17
OpenJDK Runtime Environment (build 17.0.6+10)
OpenJDK 64-Bit Server VM (build 17.0.6+10, mixed mode)

jenv local: 現在のディレクトリのjavaのバージョンを設定する

  • 実行すると、.java-versionが作られる。
  • このディレクトリからシェルが開始されたときに、jenvはversionを正常に設定する。
$ jenv local 11.0.2
$ exec $SHELL -l
$ cat .java-version
11.0.2

https://github.com/jenv/jenv#12-adding-your-java-environment

このスクラップは2023/03/09にクローズされました