我在邮件pom.xml文件中有以下内容:
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.7</target>
</configuration>
这是对的吗?请告诉我-source和-target标签的实际用法是什么?
此外,我的要求是&#34;对于maven插件,只需确保它是用Java 7编译的,并且#34;。
答案 0 :(得分:1)
source
和target
参数从maven编译器插件传播到SDK中的javac
编译器。
源小于目标值得怀疑。正如@khmarbaise在评论中提到的,这意味着您的源代码是编译JDK6但是您需要JVM for Java 1.7。
然而,目标较小比源更有意义。例如
<source>1.8</source>
<target>1.6</target>
应编译JDK 8代码并生成与Java 1.6+ JVM兼容的字节码。虽然我从未尝试过 - 行为甚至可以区分不同的Java语言实现(OpenJDK,OracleJDK,...)