我可以让Java 5忽略@Override错误吗?

时间:2010-01-25 21:59:02

标签: java annotations override

  

可能重复:
  Why does Eclipse complain about @Override on interface methods?

我有一些使用Eclipse和Java 6 SDK编写的Java代码,因此实现接口的方法使用@Override注释 - 这是一个在Java 6中合法但在Java 5中不合法的注释。 / p>

我想使用Java 5 SDK(Mac OS X 10.5上的javac)编译相同的代码。除@Override注释外,所有内容都编译并运行正常。有什么方法可以让javac忽略这个项目的@Override注释,还是唯一能够将它们全部删除的解决方案?

5 个答案:

答案 0 :(得分:6)

不幸的是,唯一的方法是实际删除注释。

如果您确实想要使用Java 5编译和运行代码,那么您应该开发目标Java 5.否则,您可能会意外地依赖于Java 6特定的SDK方法等。

答案 1 :(得分:4)

显然你可以升级到Java 1.5 u21,这将解决问题:

Why is javac failing on @Override annotation

答案 2 :(得分:2)

您可以使用JDK6编译1.5代码。使用-bootclasspath-target-source。或者,我相信Eclipse编译器会将@Override视为相同(这可能是错误的!)。

1.5已经完成了服务终止期限,我建议让它腐烂。

答案 3 :(得分:-1)

@Override在java 5中有效 - > http://java.sun.com/j2se/1.5.0/docs/api/index.html?java/lang/Override.html

我建议您在Eclipse中检查项目的编译器设置,可能是在Project - >编译器 - >错误/警告 - >注释

答案 4 :(得分:-1)

Java 6可用于OS X.检查软件更新。如果有,请将其设置为默认的java版本,然后编译。

相关问题