如何找出并更改Java Maven用于执行的版本?

shs*_*mer 56 java maven

运行我们的Maven构建时,我的团队成员在执行时会收到错误.但是,当我们java -version从她的命令行运行时,它表示Java 1.6.0_26.Maven正在使用Java 5,这个错误显然似乎在尖叫.

我如何找出并更改Maven正在使用的Java版本?

3个可能重要的说明:

  1. 这是在命令行执行的,而不是使用Eclipse插件
  2. JAVA_HOME设置为Java 1.6 JDK
  3. 使用Maven 2.2.1

Rya*_*art 90

mvn -version将输出它正在使用的java.如果将JAVA_HOME设置为有效的JDK目录并且Maven正在使用其他内容,则很可能有人篡改了Maven启动的方式.

  • 您可以定义要与maven一起使用的Java.请参阅主题:http://stackoverflow.com/questions/18813828/why-maven-use-jdk-1-6-but-my-java-version-is-1-7 (4认同)

Ale*_*yak 9

您将需要配置maven-compiler-plugin为使用1.6 sourcetarget参数(默认情况下为1.5).

这是在项目的父pom in <pluginManagment>section中做得最好的(但是你总是可以根据每个项目配置它).

  <build>

    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>2.3.2</version>
          <configuration>
            <source>1.6</source>
            <target>1.6</target>

          </configuration>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>
Run Code Online (Sandbox Code Playgroud)