我们正在尝试将我们所有的系统升级到jdk1.8.0_66
,其中包括maven(在jenkins上运行)。Set Mavens Java版本
[[email protected] jvm]$ mvn -version
Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; 2013-02-19 14:51:28+0100)
Maven home: /opt/apache-maven-3.0.5
Java version: 1.6.0_24, vendor: Sun Microsystems Inc.
Java home: /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "2.6.32-279.5.2.el6.centos.plus.x86_64", arch: "amd64", family: "unix"
[[email protected] jvm]$ echo $JAVA_HOME
/opt/java
[[email protected] jvm]$ file /opt/java
/opt/java: symbolic link to `jdk1.8.0_66'
所有快速谷歌导致的是,我应该改变我的JAVA_HOME
到所需的Java版本。正如您在上面看到的,它设置为jdk1.8.0_66
,但Maven正在使用完全不同的路径。
问题: 如何更改maven的JAVA_HOME
?
编辑:
继@Rottens答案,我manged得到行家与jdk1.8.0_66
运行,Maven的JAVA_HOME
被设置为/opt/jdk1.8.0_66/jre
。
不过,我仍然在尝试部署了以下错误(建筑工作正常):
Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.3:compile (default-compile) on project deployTest: Fatal error compiling: invalid target release: 1.7
在POM编译插件设置如下:
<plugin>
<inherited>true</inherited>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven.compiler.plugin.version}</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
在我的Jenkins项目配置中,我指定它使用default
JDK和Maven Version 3.2.1
。
只注意到:
的Maven版本3.0.5(我配置为使用1.8)没有出现在詹金斯。 Jenkins中出现的版本是3.2.1
,3.1.1
和3.0.4
。
您是否检查过'/ private/etc/mavenrc'和'〜/ .mavenrc'来覆盖JAVA_HOME设置? –
'mvn --v'的输出是什么? – Patrick
Maven是否也使用相同的用户jenkins?很有可能您的Maven用户对“JAVA_HOME”设置不同。 – nobeh