Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java_home在启动jenv后仍然指向java的最新版本_Java_Macos_Maven_Homebrew - Fatal编程技术网

java_home在启动jenv后仍然指向java的最新版本

java_home在启动jenv后仍然指向java的最新版本,java,macos,maven,homebrew,Java,Macos,Maven,Homebrew,我已使用brew cask安装了多个版本的JDK: MacBook-Pro:bin myusername$ brew cask list java java8 soapui 并将默认值设置为java8: MacBook-Pro:bin myusername$ jenv globa

我已使用brew cask安装了多个版本的JDK:

MacBook-Pro:bin myusername$ brew cask list
java                                                        java8                                                       soapui
并将默认值设置为java8:

MacBook-Pro:bin myusername$ jenv global
1.8.0.162
但是,当我使用lanuch maven时,它没有找到
$JAVA\u HOME
,而使用
JAVA\u HOME

MacBook-Pro:bin myusername$ /usr/libexec/java_home
/Library/Java/JavaVirtualMachines/jdk-9.0.4.jdk/Contents/Home
maven脚本:

#!/bin/bash
JAVA_HOME="${JAVA_HOME:-$(/usr/libexec/java_home)}" exec "/usr/local/Cellar/maven@3.2/3.2.5/libexec/bin/mvn" "$@"

我可以更改
mvn
脚本,但是如果我可以修复
JAVA\u HOME
问题,它会更好。有什么提示吗

为此,您必须启用jenv maven插件。从:

假设您希望Maven使用由Jenv激活的JDK,而不是>默认JAVA_HOME配置。你需要激活Jenv的maven插件

注意:enable plugin功能是系统范围的,不是shell的本地功能,也不是临时功能——您只需执行一次


实际上问题是没有设置
JAVA\u HOME
。为此,我在
.bash_profile
中添加了以下内容:
export JAVA_HOME=“$HOME/.jenv/versions/`jenv version name`
是的,但是在单个会话期间,您无法在JVM之间切换。也许编辑器可以更改标题以突出显示此问题是特定于maven的,我会更快地找到此答案:-P
$ jenv enable-plugin maven
maven plugin activated