我刚买了一台全新的MacBook Pro。这是我有史以来的第一个MAC,而且我仍然试图抓住导航的方向。无论如何......我也是Java的新手,而且我在我的Windows PC上练习,然后才永久死亡。现在我已经在这个MAC上安装了我的JDK,现在我需要设置JAVA_HOME
环境变量。我不知道该怎么做。
我尝试了一些这些指南,并没有走得太远。
http://www.mkyong.com/java/how-to-set-java_home-environment-variable-on-mac-os-x/ http://www.youtube.com/watch?v=aCEPrODy68o
我非常确定这个让我创建了一个现在无用的文件:
youtube.com/watch?v=-cASjkF94dc
我能够找到终端,我想我创建了一些多个文件。我收到这样的消息:
(1)另一个程序可能正在编辑同一个文件。 如果是这种情况,请注意不要以两个为止 进行更改时,同一文件的不同实例。 退出,或继续谨慎。
(2)此文件的编辑会话崩溃。 如果是这种情况,请使用":recover"或" vim -r /Users/Erwin/.bash_profile" 恢复更改(请参阅":帮助恢复")。 如果您已经这样做,请删除交换文件" /Users/Erwin/.bash_profile.sw p" 避免这个消息。
有些Mac专家可以帮助我解决这个问题并逐步设置Java环境吗?
答案 0 :(得分:283)
您需要做的就是:
echo export "JAVA_HOME=\$(/usr/libexec/java_home)" >> ~/.bash_profile
然后重启你的shell。
如果您安装了多个JDK版本并且希望它是特定版本,则可以使用-v
标记java_home
,如下所示:
echo export "JAVA_HOME=\$(/usr/libexec/java_home -v 1.7)" >> ~/.bash_profile
答案 1 :(得分:19)
我是通过放
来做到的export JAVA_HOME=`/usr/libexec/java_home`
我的.bashrc中的(backtics)。请参阅我对Adrian的回答的评论。
答案 2 :(得分:9)
建议通过以下命令在设置 JAVA_HOME 环境变量之前检查默认终端外壳:
$ echo $SHELL
/bin/bash
如果您的默认终端为 / bin / bash (bash),则应使用 @Adrian Petrescu 方法。
如果默认终端为 / bin / zsh (Z Shell),则应在〜/ .zshenv 文件中设置这些环境变量,其内容如下:>
export JAVA_HOME="$(/usr/libexec/java_home)"
类似地,以上未提及的任何其他终端类型,都应在其各自的终端环境文件中设置环境变量。
答案 3 :(得分:7)
在Mac OSX 10.5或更高版本中,Apple建议设置$JAVA_HOME variable to /usr/libexec/java_home
,只需导出$JAVA_HOME
in file ~/. bash_profile
或~/.profile
。
打开终端并运行以下命令。
$ vim .bash_profile
export JAVA_HOME=$(/usr/libexec/java_home)
保存并退出vim编辑器,然后在.bash_profile
上运行source命令$ source .bash_profile
$ echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home
答案 4 :(得分:7)
我只花了 2 个小时来设置这个变量。其他答案对我来说不起作用。我使用的是 macOS Catalina 10.15.4。
首先,找到您实际的 Java SDK 主目录。手动导航以确保您不会因版本不正确等而出现任何错误。对我来说,这是:
/Library/Java/JavaVirtualMachines/jdk-13.0.2.jdk/Contents/Home
接下来,编辑您的终端配置文件。如果您使用的是 zsh,这将是:
vim ~/.zshrc
如果您不使用 zsh,这将是:
vim ~/.bash_profile
在里面,在文件的任何地方添加以下新行:
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-13.0.2.jdk/Contents/Home
重新启动您的终端应用程序(或源 ~/.bash_profile),它应该可以正常工作。
答案 5 :(得分:4)
我通过添加〜/ .profile来实现它。不知何故,在更新到El Capitan测试版之后,即使在.bash_profile中定义了JAVA_HOME,它也无法工作。
如果有任何El Capitan beta用户,请尝试添加.profile
答案 6 :(得分:0)
我已经更新了强大的实用程序jenv
,可以轻松在macOS上进行设置。
答案 7 :(得分:0)
下载并安装安装JDK
$ java -version
设置JAVA_HOME环境变量
$ open -t .bash_profile
或创建 .bach_profile 文件
$
open -t .bash_profile
export JAVA_HOME=$(/usr/libexec/java_home)
保存.bash配置文件并关闭bash文件,然后完美在终端中写入工作内容。
$ source .bash_profile
在终端中进行设置测试
$ echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home
答案 8 :(得分:0)
由于我使用的是由sdkman管理的openjdk,因此我添加了
sudo ln -sfn /path/to/my/installed/jdk/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk.jdk
将此内容添加到系统中后,java_home
可以识别您已安装的Java版本,即使该Java版本不是通过标准软件包安装的也是如此
答案 9 :(得分:0)
如果您使用的是 Zsh,请尝试在 ~/.zshrc 文件中添加此行并重新启动终端。
export JAVA_HOME=$(/usr/libexec/java_home)