2011-09-03 43 views
11

目前我的JAVA_HOME被设置为1.4.2的JDK。如何指示Maven使用除JAVA_HOME指定的JDK之外的JDK?

要运行Maven 3,我需要1.5及以上版本。

是否有任何方式指示我的Maven安装使用另一个JDK,而不是更改JAVA_HOME环境变量?

+0

你不能在用来启动maven的脚本中显式覆盖JAVA_HOME吗?除了maven,你还需要JAVA_HOME吗? – home

+0

是的,我的开发环境JAVA_HOME设置为1.4.2,即BEA 8.1服务器和其他东西。 –

回答

17

这几乎是做到这一点的方法。我假设你的意思是你不想改变你的全局JAVA_HOME。没关系。你只需要为Maven设置一个不同的JAVA_HOME。您可以通过在/etc/mavenrc~/.mavenrc(Linux)或%HOME%\mavenrc_pre.bat(Windows)上创建文件并使用其中定义的相应JAVA_HOME来轻松完成此操作。除非您定义了一个名为MAVEN_SKIP_RC的变量,否则Maven会在启动时执行它们。你也可以直接修改Maven的启动脚本,但是没有什么好的理由,因为它给了你很好的钩子。

+0

我不是很想去那里,我是否创建一个名为mavenrc_pre.bat的蝙蝠?该文件应该如何? –

+1

是的。在你的主目录下创建mavenrc_pre.bat,并在其中放入'JAVA_HOME = <你的jdk 6 home>'。就这样。 –

0

在Windows上:

STEP 1:

查找Apache的行家-3.2.1 \ BIN \ mvn.bat,然后查找和替换JAVA_HOME到JAVA_HOME_MVN。 注:在此之前,让mvn.bat

STEP 2的备份:

创建一个名为JAVA_HOME_MVN一个新的环境变量,它指向你想使用的任何JDK的垃圾桶。