Bug with Override annotations in Eclipse
我对Eclipse中的
这很可能是因为您在Java 1.5和Java 1.6之间切换。在1.5中,不能用@override标记接口实现,但可以在1.6中标记。
一个快速的谷歌搜索找到了这两个版本之间注释差异的很好解释:http://www.techienuggets.com/commentdetail?Tx=38155
Semantics of @Override is different in
JDK 1.5 and JDK 1.6. In JDK 1.5, the
@Override annotation is not allowed
for implementations of methods
declared in an interface, while they
are allowed in JDK 1.6. For more
information, see:http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=5008260
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6399361
http://blogs.oracle.com/ahe/?entry=overrideIt is fact that the description of the
Override annotation was not updated
in the JDK API docs. This has been
reported as a bug:http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6501053bugdatabase/view_bug.do?bug_id=6501053
只要去
1 | window -> prefrences -> java -> compiler |
并将其设置为1.6,因为符号从1.6开始,所以如果编译级别小于1.6,它将给出错误。
有一些Java编译器设置配置的地方。
一种方法是到
还可以取消选择"启用特定于项目的设置",这将消除将来的JDK编译器遵从性错误。删除JDK版本的多个实例,除非不同的项目需要它们。
确保使用的Java SDK是最新的,并且Eclipse使用正确的SDK版本(如果您安装了多个SDK),并用正确的SDK版本处理您的Android项目…