无法在 “/usr/bin/java/bin/java” (-1) 处找到可执行文件

2022-08-31 14:20:11

我在Mac osx 10.7.3中遇到了一个可怜的Java问题。以前我安装了它,它工作正常。在.bash_profile和.profile文件中进行了一些更改后,我遇到了一个错误,例如

Unable to locate an executable at "/usr/bin/java/bin/java"

每当我尝试在我的终端中运行“javac”或“java”时。

echo $PATH给出一个类似如下的输出:

/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

我的.bash_profile看起来像:

alias start_mysql="/Library/StartupItems/MySQLCOM/MySQLCOM start"
alias stop_mysql="/Library/StartupItems/MySQLCOM/MySQLCOM stop"
export JAVA_HOME=/usr/bin/java

输出which java

/usr/bin/java

它困扰了我很长时间,卸载和安装java并没有帮助我的运气。

我是Mac中的新手,需要帮助来解决此问题。

在发布此问题之前,谷歌并看到了SOF,但没有找到任何特定于我的问题的内容。

谢谢

萨比亚


答案 1

最肯定的是罪魁祸首。此 env var 应指向 JDK 或 JRE 安装目录。谷歌搜索显示,MacOS X的最佳选择似乎是 。export JAVA_HOME=/usr/bin/javaexport JAVA_HOME=/Library/Java/Home


答案 2
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home

因为:

 $ 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