使用Maven和Netbeans编译java源码1.7 for 1.6

时间:2014-11-21 20:53:34

标签: java maven netbeans

我有一个为java 1.7编写的源代码。我想为java 1.6编译它。如果我理解正确,我需要使用选项-source 1.7 -target 1.6

我正在使用Maven2和Netbeans(8.0)。所以,我试过了:

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.2</version>
            <configuration>
                <source>1.7</source>
                <target>1.6</target>
                <compilerArguments>
                    <bootclasspath>/usr/lib/jvm/java-6-openjdk-amd64/jre/lib/rt.jar</bootclasspath>
                </compilerArguments>
            </configuration>
        </plugin>

但我得到javacTask: source release 1.7 requires target release 1.7

我读到有些人使用eclipse编译器使其工作,但如果我使用Netbeans,我怎么能这样做呢?

非常感谢你的帮助

1 个答案:

答案 0 :(得分:1)

编辑对不起,反过来说。您可以编译源1.6和目标1.7但是在源版本&gt;时无法编译它。目标版本,因为它无法处理该语言的新功能。

有关此内容的更多详细信息,请参阅javac文档http://docs.oracle.com/javase/7/docs/technotes/tools/windows/javac.html中的交叉编译选项。

如果你有1.6个源,你可以像这样编译目标版本1.7:

<project>
  [...]
  <build>
    [...]
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.2</version>
        <configuration>
          <source>1.6</source>
          <target>1.7</target>
        </configuration>
      </plugin>
    </plugins>
    [...]
  </build>
  [...]
</project>>