项目在转换为maven后会抛出来自所有接口方法的错误

时间:2015-12-11 10:55:44

标签: java eclipse maven compiler-errors eclipse-mars

我有很少的Eclipse Java项目,我将它们转换为Maven。所有项目都显示错误,其中覆盖了接口方法。但是当我跑步" mvn clean"它确实显示为构建成功。此外,当我删除maven性质时,项目编译没有问题。为什么会这样?请指教。

enter image description here

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:1)

这很可能是因为你的pom缺少你所针对的Java版本的规范; 1.6之前的JDK版本不允许对实现接口方法的方法进行@Override注释。你应该总是指定他的Java版本,所以Maven不必猜测你的意图。例如:

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

当您告诉maven配置您的Eclipse项目或通过m2e导入它时,它会查找该配置以应用于Eclipse中的相​​应配置。如果版本不存在,它将使用工作空间的默认值,这可以在工作空间之间变化。你可能正在遇到这种错误。

您也可以在Eclipse中手动修复项目配置;见https://stackoverflow.com/a/1678170/639520

但是无论如何修复pom是一个好主意,然后刷新/更新Eclipse配置应该选择它。