如何更改Maven的Java家
我想改变与Sun jdk打开jdk的maven java家。 我该怎么做 ?
root@ak-EasyNote-TM98:~# mvn -version Apache Maven 3.0.4 Maven home: /usr/share/maven Java version: 1.6.0_24, vendor: Sun Microsystems Inc. Java home: /usr/lib/jvm/java-6-openjdk-amd64/jre Default locale: tr_TR, platform encoding: UTF-8 OS name: "linux", version: "3.2.0-34-generic", arch: "amd64", family: "unix" Edit:
非常抱歉。 我忘了写下面的代码:
root@ak-EasyNote-TM98:~$ java -version java version "1.7.0_07" Java(TM) SE Runtime Environment (build 1.7.0_07-b10) Java HotSpot(TM) 64-Bit Server VM (build 23.3-b01, mixed mode)
我的java home默认path已经是sun jdk了。 但Maven的Java家指出openjdk。 我想解决它只为maven。
如果您在Linux中,请使用语法export JAVA_HOME=<path-to-java>
设置JAVA_HOME。 其实这不仅是为了Maven。
我正在使用Mac ,上面的答案都没有帮助我。 我发现maven从~/.mavenrc
指定的path加载自己的JAVA_HOME
我把文件的内容改为: JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home
更新:对于Linux,它看起来像这样:
JAVA_HOME=/usr/lib/jvm/java-8-oracle/jre
上面有很大的帮助,但是如果你像我一样拥有类似的环境,那么我就是这样做的。
- 有几个运行jdk,openjdk,oracle jdk和几个版本。
- 通过yum安装apache-maven,包是apache-maven-3.2.1-1.el6.noarch
编辑这个文件/etc/profile.d/apache-maven.sh,如下所示,注意它会影响整个系统。
$ cat /etc/profile.d/apache-maven.sh MAVEN_HOME=/usr/share/apache-maven M2_HOME=$MAVEN_HOME PATH=$MAVEN_HOME/bin:$PATH # change below to the jdk you want mvn to reference. JAVA_HOME=/usr/java/jdk1.7.0_40/ export MAVEN_HOME export M2_HOME export PATH export JAVA_HOME
只需设置JAVA_HOME env属性。
关键是使用命令sudo update-java-alternatives -s java-6-sun
。 任何依赖于javac
命令都会受到影响,而不仅仅是Maven。
即使您安装了Oracle JDK,您的$JAVA_HOME
variables也应该引用JDK根目录中的JREpath。 有关更多详细信息,请参阅我的其他答案 。
我有我的ubuntu服务器14.04两个Java版本。 java 1.7
和java 1.8
。
我有一个项目,我需要build立使用java 1.8
。
如果我使用java -version
检查我的java版本
我明白了
java version "1.8.0_144"
但是当我做了mvn -version
我得到:
Java version: 1.7.0_79, vendor: Oracle Corporation
将mvn版本设置为java8
我这样做:
export JAVA_HOME=/usr/lib/jvm/java-8-oracle/jre/
然后当我做mvn -version
我得到:
Java version: 1.8.0_144, vendor: Oracle Corporation
希望这可以帮助别人。