更新时间:2023-09-15 16:55:28
java
,javac
等命令行工具对JAVA_HOME
环境变量的值敏感,如果此变量使用1.6指向1.6 JDK.工具/usr/libexec/java_home
在这里是您的朋友.正在运行
The java
, javac
, etc. command line tools are sensitive to the value of the JAVA_HOME
environment variable and will use 1.6 if this variable points to a 1.6 JDK. The tool /usr/libexec/java_home
is your friend here. Running
/usr/libexec/java_home
将为系统上最新的JDK打印适当的JAVA_HOME
值.这将是Java 7,但是您可以使用-v
标志来应用约束,例如
will print out the appropriate JAVA_HOME
value for the most up to date JDK on your system. This will be Java 7, but you can apply constraints using the -v
flag, for example
/usr/libexec/java_home -v '1.6*'
将为系统上***的 1.6 JDK返回JAVA_HOME
值.您可以使用此值设置JAVA_HOME
:
will return a JAVA_HOME
value for the best available 1.6 JDK on your system. You can use this value to set JAVA_HOME
:
export JAVA_HOME=`/usr/libexec/java_home -v '1.6*'`
通过将以上行添加到主目录中的.bash_profile
文件中,将
一次性地用于特定的终端会话,或者永久地用于所有将来的终端会话.
either as a one-off for a particular Terminal session, or permanently for all future terminal sessions by adding the above line to the .bash_profile
file in your home directory.
$ export JAVA_HOME=`/usr/libexec/java_home -v '1.6*'`
$ java -version
java version "1.6.0_37"
Java(TM) SE Runtime Environment (build 1.6.0_37-b06-434-11M3909)
Java HotSpot(TM) 64-Bit Server VM (build 20.12-b01-434, mixed mode)
$ export JAVA_HOME=`/usr/libexec/java_home -v '1.7*'`
$ java -version
java version "1.7.0_09"
Java(TM) SE Runtime Environment (build 1.7.0_09-b05)
Java HotSpot(TM) 64-Bit Server VM (build 23.5-b02, mixed mode)