我想这个问题确定困扰了不少人,我也不例外。新公司用的东西多多少少会与咱们之前公司的有所不一样。因此这个问题也时常伴随在咱们身边。java
第一种解决方案: @Override是JDK5 就已经有了,但有个小小的Bug,就是不支持对接口的实现,认为这不是Override 而JDK6 修正了这个Bug,不管是对父类的方法覆盖仍是对接口的实现均可以加上@Override 修改你的eclipse指定的编译器版本tomcat
在选项里的Java compiler中指定版本至少在5.0以上 在myEclipse中改变编译器的方法:Project->Properties->Java Compiler->Configure Workspace Setting,在弹出的页面中能够进行设置。 这个来自于:http://blog.csdn.net/CodeJoker/archive/2009/07/02/4317361.aspxeclipse
第二种解决方案:(我使用这种方法,没有问题) 在JAVA 1.5和1.6中@override的用法是有些区别的,虽然改变了JRE但eclipse仍是会报错。ide
解决办法:Windows->Preferences-->java->Compiler-->compiler compliance level设置成6.0就OK了.spa
注意: 可是在导入一个工程时,编译并打包到Tomcat后,发现出现java.lang.UnsupportedClassVersionError: Bad version number in .class file异常,检查了一下个人myEclipse,我发现个人eclipse的compiler的jdk版本,tomcat所用的jdk版本不一致,后来设置成一致就能够了。看来果真是这个问题引发。 那次在Linux上部署工程时也出现过由于版本不一样引发的问题,那时咱们用的IDE的编译器是JDK5.0,而那台Linux装的是JDK6.0,部署后发现不少功能都出错,看来有些东西仍是注意一下啊。.net
附,在myEclipse中改变编译器的方法:Project->Proper的ties->Java Compiler->Configure Workspace Setting,在弹出的页面中能够进行设置 其实这种方式与第二种差很少,异曲同工。第一种方式重点是设置这一个项目。而第二种重点设置全部项目。不过均可以用。blog