Maven在OSX上忽略了JAVA_HOME? [英] Maven ignoring JAVA_HOME on OSX?

查看:109
本文介绍了Maven在OSX上忽略了JAVA_HOME?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

出于某种原因,Maven忽略了OSX上的JAVA_HOME。

For some reason Maven is ignoring JAVA_HOME on OSX.

我最近从java 8 build 11升级到java 8 build 25并因为25中的错误修复而删除了11。

I recently upgraded from java 8 build 11 to java 8 build 25 and removed 11 because of a bug fix in 25.

我已更新 JAVA_HOME

:~ > echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home

java javac 都报告了正确的版本:

java and javac both report the correct version:

:~ > java -version
java version "1.8.0_25"
Java(TM) SE Runtime Environment (build 1.8.0_25-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)

:~ > javac -version
javac 1.8.0_25

libexec 是正确的:

:~ > /usr/libexec/java_home 
/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home

CurrentJDK符号链接是正确的:

the CurrentJDK symlink is correct:

:~ > ls -la /System/Library/Frameworks/JavaVM.framework/Versions/
total 64
drwxr-xr-x  11 root  wheel   374B Nov 19 14:35 ./
drwxr-xr-x  12 root  wheel   408B Sep 23 14:29 ../
lrwxr-xr-x   1 root  wheel    10B Jul 28 14:50 1.4@ -> CurrentJDK
lrwxr-xr-x   1 root  wheel    10B Jul 28 14:50 1.4.2@ -> CurrentJDK
lrwxr-xr-x   1 root  wheel    10B Jul 28 14:50 1.5@ -> CurrentJDK
lrwxr-xr-x   1 root  wheel    10B Jul 28 14:50 1.5.0@ -> CurrentJDK
lrwxr-xr-x   1 root  wheel    10B Jul 28 14:50 1.6@ -> CurrentJDK
lrwxr-xr-x   1 root  wheel    10B Jul 28 14:50 1.6.0@ -> CurrentJDK
drwxr-xr-x   8 root  wheel   272B Jul 29 18:41 A/
lrwxr-xr-x   1 root  wheel     1B Jul 28 14:50 Current@ -> A
lrwxr-xr-x   1 root  wheel    58B Nov 19 14:35 CurrentJDK@ -> /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents

但Maven仍在尝试点击1.8.0_11:

But Maven is still trying to hit 1.8.0_11:

:~ > mvn -version
Error: JAVA_HOME is not defined correctly.
  We cannot execute /Library/Java/JavaVirtualMachines/jdk1.8.0_11.jdk/Contents/Home/bin/java

运行OSX Mavericks。

Running OSX Mavericks.

任何想法为什么Maven忽略 JAVA_HOME

Any idea why Maven is ignoring JAVA_HOME?

推荐答案

一位同事告诉我问题是什么。他不想要代表点,所以我只是发布答案给任何可能通过谷歌找到这个的人。

A coworker told me what the problem was. He didn't want the rep points so I'm just posting the answer for anybody who may find this via google.

解决方案是放

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home

in

~/.mavenrc

显然,无论出于何种原因,maven都会获得自己的个人资料文件。使用上述值创建上述文件会立即解决问题:

Apparently for whatever reason maven gets its own profile file. Creating the above file with the above value fixed the problem immediately:

:~ > mvn -version
Apache Maven 3.2.3 (33f8c3e1027c3ddde99d3cdebad2656a31e8fdf4; 2014-08-11T16:58:10-04:00)
Maven home: /usr/local/Cellar/maven/3.2.3/libexec
Java version: 1.8.0_25, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "10.9.5", arch: "x86_64", family: "mac"

这篇关于Maven在OSX上忽略了JAVA_HOME?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆