Ich habe ein pathetisches Problem mit Java in meinem Mac osx 10.7.3 . Vorher habe ich es installiert und es funktionierte einwandfrei ..__ Nach einigen Änderungen in der .bash_profile und der .profile-Datei im Laufe der Zeit. Ich habe einen Fehler wie
Unable to locate an executable at "/usr/bin/Java/bin/Java"
immer wenn ich versuche, "javac" oder "Java" in meinem Terminal auszuführen.
echo $PATH
gibt eine Ausgabe wie folgt aus:
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/Users/sabya/Documents/Play_Framework/play-2.0:/usr/X11/bin:/usr/local/git/bin:/usr/local/mysql/bin
Mein .bash_profile sieht folgendermaßen aus:
alias start_mysql="/Library/StartupItems/MySQLCOM/MySQLCOM start"
alias stop_mysql="/Library/StartupItems/MySQLCOM/MySQLCOM stop"
export Java_HOME=/usr/bin/Java
Ausgabe von which Java
/usr/bin/Java
Seine langwierigen Probleme und das Deinstallieren und Installieren von Java haben meinem Glück nicht geholfen.
Ich bin ein Neuling in Mac und brauche Hilfe, um dieses Problem zu lösen.
Googled und sah SOF vor dem Posten dieser Frage, fand aber nichts Spezifisches für mein Problem.
Vielen Dank
Sabya
Mit Sicherheit ist export Java_HOME=/usr/bin/Java
der Schuldige. Diese Env-Variable sollte auf das JDK- oder JRE-Installationsverzeichnis verweisen. Beim Googeln scheint export Java_HOME=/Library/Java/Home
die beste Option für MacOS X zu sein.
Java_HOME
ist nicht der Name der Java-Programmdatei . Aber von dem Verzeichnis wurde Java installiert. Die ausführbare Datei sollte $Java_HOME/bin/Java
sein.
Der Befehl which
ist dort nicht hilfreich für Sie. Es gibt Ihnen zwar kein Java-Zuhause, aber höchstwahrscheinlich handelt es sich nur um einen Wrapper oder Symlink zu Java, der in einem anderen Verzeichnis installiert ist.
export Java_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home
Weil:
$ find /Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home -name Java*
/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/bin/Java
/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/bin/javac
/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/bin/javadoc
/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/bin/javafxpackager
/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/bin/javah
/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/bin/javap
/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/bin/javapackager
/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/javafx-src.Zip
/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/jre/bin/Java
ich habe das gleiche Problem erlebt, und nachdem ich diesen Beitrag gelesen habe, habe ich die Java_HOME
-Definition in .bash_profile
noch einmal überprüft. Es ist eigentlich:
export Java_HOME=$(which Java)
das, genau wie Anony-Mousse erklärt, ist die ausführbare Datei. Ändern Sie es in:
export=/Library/Java/Home
behebt das Problem, es ist immer noch interessant zu verstehen, warum es in der Profildatei so bewertet wird.