【问题标题】:java maven-compiler-plugin:3.1, javacTask: source release 1.7 requires target release 1.7java maven-compiler-plugin:3.1, javacTask: 源版本 1.7 需要目标版本 1.7
【发布时间】:2014-01-17 09:06:16
【问题描述】:

我想为 Java 1.7 构建一个 Java 代码。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.1</version>
        <configuration>
            <source>1.7</source>
            <terget>1.7</terget>
        </configuration>
</plugin>

但我收到以下错误:

javacTask: source release 1.7 requires target release 1.7

以下调试输出显示目标是 1.5:

-d C:\Users\przemekb\Documents\NetBeansProjects\ManagingPersistanceObjects\target\classes -classpath 
C:\Users\przemekb\Documents\NetBeansProjects\ManagingPersistanceObjects\target\classes;
C:\Users\przemekb\.m2\repository\org\hibernate\hibernate-validator\5.0.0.Final\hibernate-validator-5.0.0.Final.jar;
C:\Users\przemekb\.m2\repository\javax\validation\validation-api\1.1.0.Final\validation-api-1.1.0.Final.jar;
C:\Users\przemekb\.m2\repository\org\jboss\logging\jboss-logging\3.1.1.GA\jboss-logging-3.1.1.GA.jar;
C:\Users\przemekb\.m2\repository\com\fasterxml\classmate\0.8.0\classmate-0.8.0.jar;
C:\Users\przemekb\.m2\repository\org\hibernate\javax\persistence\hibernate-jpa-2.1-api\1.0.0.Final\hibernate-jpa-2.1-api-1.0.0.Final.jar;
C:\Users\przemekb\.m2\repository\javax\persistence\persistence-api\1.0\persistence-api-1.0.jar;
C:\Users\przemekb\.m2\repository\org\eclipse\persistence\javax.persistence\2.1.0\javax.persistence-2.1.0.jar;
C:\Users\przemekb\.m2\repository\org\eclipse\persistence\eclipselink\2.5.1\eclipselink-2.5.1.jar;
C:\Users\przemekb\.m2\repository\org\eclipse\persistence\commonj.sdo\2.1.1\commonj.sdo-2.1.1.jar;
C:\Users\przemekb\.m2\repository\org\eclipse\persistence\org.eclipse.persistence.jpa\2.5.1\org.eclipse.persistence.jpa-2.5.1.jar;
C:\Users\przemekb\.m2\repository\org\eclipse\persistence\org.eclipse.persistence.asm\2.5.1\org.eclipse.persistence.asm-2.5.1.jar;
C:\Users\przemekb\.m2\repository\org\eclipse\persistence\org.eclipse.persistence.antlr\2.5.1\org.eclipse.persistence.antlr-2.5.1.jar;
C:\Users\przemekb\.m2\repository\org\eclipse\persistence\org.eclipse.persistence.jpa.jpql\2.5.1\org.eclipse.persistence.jpa.jpql-2.5.1.jar;
C:\Users\przemekb\.m2\repository\org\eclipse\persistence\org.eclipse.persistence.core\2.5.1\org.eclipse.persistence.core-2.5.1.jar;
C:\Users\przemekb\.m2\repository\org\apache\derby\derby\10.10.1.1\derby-10.10.1.1.jar;
C:\Users\przemekb\.m2\repository\org\eclipse\persistence\org.eclipse.persistence.jpa.modelgen.processor\2.5.1\org.eclipse.persistence.jpa.modelgen.processor-2.5.1.jar; -sourcepath 
C:\Users\przemekb\Documents\NetBeansProjects\ManagingPersistanceObjects\src\main\java; -s 
C:\Users\przemekb\Documents\NetBeansProjects\ManagingPersistanceObjects\target\generated-sources\annotations -g -nowarn -target 1.5 -source 1.7 -encoding UTF-8

如何在 NetBeans IDE 中解决此问题?

【问题讨论】:

    标签: java maven-compiler-plugin


    【解决方案1】:

    将您的terget 更改为target :)

    使用 Apache Maven 3.x 可以将其编写为普通的 pom.xml 属性。

    更具可读性的解决方案:

    <properties>
      <maven.compiler.source>1.7</maven.compiler.source>
      <maven.compiler.target>1.7</maven.compiler.target>
    </properties>
    

    【讨论】:

      【解决方案2】:

      您的目标拼写错误 - 您的元素名为 terget(不是第二个字母 e)。 只需将其替换为目标,就可以了:

      <target>1.7</target>
      

      【讨论】:

        【解决方案3】:

        你拼错了目标。应该是:

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.1</version>
            <configuration>
              <source>1.7</source>
              <target>1.7</target>
            </configuration>
        </plugin>
        

        【讨论】:

          最近更新 更多