Java 9 Jlink: コマンドが見つかりません

Java 9 Jlink: コマンドが見つかりません

Java 9 で jlink を使い始めようとしています。Mac に Java 9 をインストールしましたが、たとえば jshell は問題なく動作します。しかし、jlink を使用しようとすると、jlink: command not found というメッセージが表示されます。何が問題なのか、誰かわかる人はいませんか? 何をチェックすればいいのかさえわかりません。結局のところ、jshell が正常に動作するなら、jdk 9 がインストールされているはずですよね??

答え1

これはインストールの問題ではなく、デフォルトではパスに含まれていないため、手動で追加する必要があります。

O'Reilly の Java 9 Modularity の本によると、これは意図的な決定であり、そのことは記載されていますが、なぜこの決定が行われたかについては説明されていません。

次のスニペットを .bashrc または同等のものに追加することで、jlink を他の実行可能ファイルと同様にパスに追加できます。

export PATH="$JAVA_HOME/bin:$PATH"設定されていない場合は完全なパスを使用します$Java_Home

答え2

問題が見つかりました。jlink が、たとえば jshell のように PATH ディレクトリに自動的に追加されない理由はまだわかりませんが、解決策は jlink 実行可能ファイルを見つけるのと同じくらい簡単でした。jlink は の場所にあったので/Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home/bin、.bash_profile ファイルのパスにそれを追加しました... それでも、なぜこれが必要なのかはわかりません。

関連情報