对maven项目使用not-default compilier

时间:2012-02-15 08:24:27

标签: java maven

我有两个JDK - 1.5和1.6 默认JDK为1.6(JAVA_HOME设置为JDK 1.6)
并有环境。变量JAVA_HOME_1_5设置为JDK 1.5

我想要使用JDK 1.5编译maven项目,所以我接下来添加到pom.xml:

<plugin>  
    <groupId>org.apache.maven.plugins</groupId>  
    <artifactId>maven-compiler-plugin</artifactId>  
    <configuration>  
      <fork>true</fork>  
      <executable>${env.JAVA_HOME_1_5}/bin/javac.exe</executable>  
      <showDeprecation>true</showDeprecation>  
      <showWarnings>true</showWarnings>  
      <optimize>true</optimize>  
      <source>1.5</source>  
      <target>1.5</target>  
    </configuration>  
  </plugin>

但是maven正在用JDK 1.6编译我的项目! 怎么了?
  提前谢谢!

3 个答案:

答案 0 :(得分:1)

%> JAVA_HOME=$JAVA_HOME_1_5 mvn install

Maven默认情况下使用JAVA_HOME,因此您可以将其设置为jdk_1.5。

对于pom方式,你应该添加:

<plugin>  
  <groupId>org.apache.maven.plugins</groupId>  
  <artifactId>maven-surefire-plugin</artifactId>  
  <configuration>  
    <jvm>${JAVA_HOME_1_5}/bin/java</jvm>  
    <forkMode>once</forkMode>  
  </configuration>  
</plugin>

答案 1 :(得分:0)

可能是因为,正如文档here所示,您错过了配置中的<compilerVersion>1.5</compilerVersion>

答案 2 :(得分:0)