我正在使用maven 3.2.5来构建我的项目,这个版本的maven与java 6兼容。
我想构建一个强制使用带有maven-enforcer-plugin的java 5的项目。
如果我将JAVA_HOME设置为java 5目录,我无法运行maven,如果我将JAVA_HOME设置为java 6目录,则enforcer插件会抱怨java版本。
有没有办法告诉maven使用与用于运行maven的java不同版本的java?
答案 0 :(得分:4)
在这种情况下,您需要使用可以准确解决问题的工具链。就像使用JDK 7运行Maven(例如Maven 3.5.0),但代码需要使用JDK 6进行编译和测试。
请参阅有关toolchains的文档。
答案 1 :(得分:1)
您可以使用maven编译器插件来设置您想要使用的javac,例如:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.6.1</version>
<configuration>
<verbose>true</verbose>
<fork>true</fork>
<executable>WRITE HERE THE PATH TO YOUR JAVAC 1.5</executable>
<compilerVersion>1.5</compilerVersion>
</configuration>
</plugin>
答案 2 :(得分:-1)
右键点击项目