seltsames Problem mit dem Softlink-Befehl „ln“ auf dem Mac

seltsames Problem mit dem Softlink-Befehl „ln“ auf dem Mac

Ich möchte ein leeres Verzeichnis erstellen /Library/Java/JavaVirtualMachines/jdk1.8.0_5.jdk/Contents/Home/, das auf das echte Verzeichnis verweist /Library/Java/JavaVirtualMachines/jdk1.8.0_74.jdk/Contents/Home/, da ein Teil des Codes von dieser bestimmten Version des JDK (1.8.0_5, ich habe jedoch nur 1.8.0_74) abhängig ist, der Befehl ln schlägt jedoch mit dem folgenden Fehler fehl. Irgendwelche Ideen, was falsch ist? Danke.

Übrigens verwende ich Mac OSX.

ls -l /Library/Java/JavaVirtualMachines/
total 0
drwxr-xr-x  3 root  root  102 Jan 20 16:32 Contents
drwxr-xr-x  3 root  root  102 Jan 25 16:16 jdk1.8.0_05.jdk
drwxr-xr-x  3 root  root  102 Jan 25 16:15 jdk1.8.0_25.jdk
drwxr-xr-x  3 root  root  102 Jan 25 16:15 jdk1.8.0_40.jdk
drwxr-xr-x  3 root  root  102 Jan 20 16:32 jdk1.8.0_72.jdk
drwxr-xr-x  3 root  root  102 Feb  5 15:25 jdk1.8.0_74.jdk
ln -s /Library/Java/JavaVirtualMachines/jdk1.8.0_5.jdk/Contents/Home/ /Library/Java/JavaVirtualMachines/jdk1.8.0_74.jdk/Contents/Home/
ln: /Library/Java/JavaVirtualMachines/jdk1.8.0_74.jdk/Contents/Home//Home: File exists

Update, Lösung von Schlachter ausprobiert, aber mit neuen Problemen konfrontiert,

ls /Library/Java/JavaVirtualMachines
Contents        jdk1.7.0_51.jdk jdk1.8.0_25.jdk jdk1.8.0_72.jdk jdk1.8.0_77.jdk
jdk1.7.0_21.jdk jdk1.8.0_05.jdk jdk1.8.0_40.jdk jdk1.8.0_74.jdk

ln -s /Library/Java/JavaVirtualMachines/jdk1.8.0_74.jdk/Contents/Home /Library/Java/JavaVirtualMachines/jdk1.8.0_5.jdk/Contents/
ln: /Library/Java/JavaVirtualMachines/jdk1.8.0_5.jdk/Contents/: No such file or directory

Antwort1

Solange jdk1.8.0_5.jdk/Contents/Homees nicht existiert, verwenden Sie:

ln -s /Library/Java/JavaVirtualMachines/jdk1.8.0_74.jdk/Contents/Home /Library/Java/JavaVirtualMachines/jdk1.8.0_5.jdk/Contents/

Der abschließende Schrägstrich Contents/platziert die HomeVerknüpfung innerhalb des ContentsOrdners. Der Ordner hat keinen Schrägstrich, Homeda er das Ziel des Links ist.

Bearbeiten: Alle Ordner, zu denen der Link führt, müssen vorhanden sein. mkdirIch kann sie für Sie erstellen, z. B.mkdir -p /Library/Java/JavaVirtualMachines/jdk1.8.0_5.jdk/Contents

verwandte Informationen