Java 9 Jlink: Befehl nicht gefunden

Java 9 Jlink: Befehl nicht gefunden

Ich versuche gerade, mit der Verwendung von jlink unter Java 9 zu beginnen. Ich habe Java 9 auf meinem Mac installiert und jshell läuft beispielsweise einwandfrei. Wenn ich jedoch jlink verwenden möchte, erhalte ich die Meldung „jlink: Befehl nicht gefunden“. Hat jemand eine Idee, was möglicherweise schief läuft? Ich weiß nicht einmal, was ich überprüfen soll. Wenn jshell einwandfrei läuft, muss ich schließlich JDK 9 installiert haben??

Antwort1

Dies ist kein Problem Ihrer Installation, es muss manuell hinzugefügt werden, da es standardmäßig nicht im Pfad enthalten ist.

Laut dem Buch „Java 9 Modularity“ von O'Reilly handelt es sich dabei um eine bewusste Entscheidung. Dort wird zwar darauf hingewiesen, aber es wird keine Erklärung dafür gegeben, warum diese Entscheidung getroffen wurde.

jlink kann wie jede ausführbare Datei zu Ihrem Pfad hinzugefügt werden, indem Sie diesen Snippet zu Ihrer .bashrc-Datei oder einem gleichwertigen Programm hinzufügen:

export PATH="$JAVA_HOME/bin:$PATH", verwenden Sie den vollständigen Pfad, wenn $Java_Homeer nicht festgelegt ist.

Antwort2

Ich habe das Problem gefunden. Obwohl ich immer noch nicht weiß, warum jlink nicht automatisch zu einem PATH-Verzeichnis hinzugefügt wurde, wie es beispielsweise bei jshell der Fall war, war die Lösung so einfach wie das Auffinden der ausführbaren jlink-Datei. Sie befand sich am Speicherort von /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home/bin, also habe ich sie einfach zu meinem Pfad in meiner .bash_profile-Datei hinzugefügt … ich habe immer noch keine Ahnung, warum das alles notwendig war.

verwandte Informationen