我一直在寻找我的Maven和Eclipse JRE版本问题的解决方案,即使我想要不同的东西,JRE 1.5也会在Eclipse项目中被强制使用。
在我的搜索过程中,我注意到似乎有两种不同的解决方案。第一个解决方案建议使用类似下面的代码段
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</build>
第二种解决方案建议仅使用两个属性:
<properties>
<maven.compiler.source>1.6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
</properties>
为什么两种可能的解决方案以及它们为何不同?
答案 0 :(得分:3)
指定它有很长的路要走(通过在pom文件中定义<plugin>
配置),这是配置插件的常用方法,并且有使用用户属性的简写。
正如您在文档中找到的那样。
Java编译器的-source参数。默认值为:1.5。
用户属性是:maven.compiler.source。
如果您只想指定源和目标级别,那么没有区别,但<plugin>
配置还允许您指定其他配置设置,限制编译器插件的版本等。
答案 1 :(得分:1)
许多Maven插件允许使用一些属性来指定参数。 maven.compiler.source
和maven.compiler.target
属性由Maven编译器插件指定。
请参阅&#34;用户属性&#34;部分:
http://maven.apache.org/plugins/maven-compiler-plugin/compile-mojo.html#source
http://maven.apache.org/plugins/maven-compiler-plugin/compile-mojo.html#target
http://maven.apache.org/plugins/maven-compiler-plugin/compile-mojo.html