SiteMap

2012年10月11日木曜日



以下是我从http://www.189works.com/portal.php?mod=view&aid=46816看到的部分内容:

java @override 报错处理

有时候在自己电脑上编译通过的java代码,在别人那里却编译不通过,总是@override报错,把@override去掉就好了,但不能从根本上解决问题。

这是jdk的问题,@Override是JDK5就已经有了,但有个小小的Bug,就是不支持对接口的实现,认为这不是Override 而JDK6修正了这个Bug,无论是对父类的方法覆盖还是对接口的实现都可以加上@Override。

首先要确保安装了jdk 1.6,

然后,在eclipse中修改配置,在 Windows->Preferences-->java->Compiler-->compiler compliance level 中选择 1.6,刷新工程,重新编译下;

如果还是不行,就在报错的工程上,鼠标右键选择 Properties-->Java Compiler-->compiler compliance level 中选择 1.6,刷新工程,重新编译下。

我刚刚开始学习android,我用的JDK版本已经是1.7了,在照着书上的例子敲代码,有监听器的例子都出现了@Override的问题,照着以上方法最后一步,发现工程的compiler compliance level默认是1.5,改成1.6就没有问题了。

0 件のコメント: