首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用两个版本的Java配置Maven

使用两个版本的Java配置Maven
EN

Stack Overflow用户
提问于 2010-07-12 17:00:57
回答 3查看 3.3K关注 0票数 1

我需要两个版本的Java ie。Java5和Java6在同一台机器上,因为我的一些项目支持Java6,一些项目支持Java5。所以我将Java6的路径放在JAVA_HOME中,将Java5的路径放在JAVA5_HOME中。我在JAVA_HOMEs变量中添加了这两个路径。

但是,当我执行java -version时,默认情况下会得到以下结果

java version "1.6.0" Java(TM) SE Runtime Environment (build 1.6.0-b105) Java HotSpot(TM) Client VM (build 1.6.0-b105, mixed mode, sharing)

有没有可能把Java5和Java6一起使用??

另外,我想知道,是否可以使用两个版本的Java (Java1.6和Java1.5)配置maven2,并在运行时使用所需的版本来构建项目?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-07-12 17:05:59

所以我把Java6的路径放在JAVA_HOME里,把Java5的路径放在JAVA5_HOME里。我在JAVA_HOMEs变量中添加了这两个路径。

这真的不是一个好主意(而且他们中的一个无论如何都会是第一个上路的)。您应该只添加JAVA_HOME并使其指向您想要使用的JDK (并按需切换)。

我还想知道,是否可以使用两个版本的

(Java1.6和Java1.5)来配置maven2,并在运行时使用所需的版本来构建项目?

不是的。Maven使用JAVA_HOME,一次只能使用一个JDK。

如果你想用2个不同的JDK构建同一个项目,你最好的选择就是使用像Hudson这样的CI引擎并建立一个构建矩阵。

票数 1
EN

Stack Overflow用户

发布于 2010-07-12 17:21:24

实现这一点的一种方法在maven-compiler-plugin site上有文档记录。

就我个人而言,我首先会尝试使用编译mojo (documented here)的sourcetarget参数,因为这将允许您同时使用1.5和1.6,而无需切换到其他documented here编译器。

票数 2
EN

Stack Overflow用户

发布于 2016-02-18 01:24:55

最近,在与maven七年的漫长合作之后,我了解了toolchains.xml。Maven甚至记录了它,并从2.0.9 toolchains documentation开始支持它

所以我在~/.m2/文件夹中添加了一个包含以下内容的toolchain.xml文件:

代码语言:javascript
复制
<toolchains xmlns="http://maven.apache.org/TOOLCHAINS/1.1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://maven.apache.org/TOOLCHAINS/1.1.0 http://maven.apache.org/xsd/toolchains-1.1.0.xsd">
 <!-- JDK toolchains -->
 <toolchain>
   <type>jdk</type>
   <provides>
     <version>1.8</version>
     <vendor>sun</vendor>
   </provides>
   <configuration>
     <jdkHome>/opt/java8</jdkHome>
   </configuration>
 </toolchain>
 <toolchain>
   <type>jdk</type>
   <provides>
     <version>1.7</version>
     <vendor>sun</vendor>
   </provides>
   <configuration>
     <jdkHome>/opt/java7</jdkHome>
   </configuration>
 </toolchain>
</toolchains>

它允许您定义Maven可以使用哪些不同的JDK来构建项目,而与JDK Maven运行的方式无关。这有点像在IDE中定义项目级别的JDK。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3227054

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档