# Friday, June 20, 2008

@Override in eclipse

When one implements an interface, the template in Eclipse puts an @Override and it does not complain about it. Ant javac task also compiles without warnings.

Sometimes other Eclipse instances start to complain exactly for that @Override stating that there's no method that's overridden. Well, Eclipse, please do make up your mind.

http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Override.html
"Indicates that a method declaration is intended to override a method declaration in a superclass. If a method is annotated with this annotation type but does not override a superclass method, compilers are required to generate an error message."

Well, that's not very clear. As far as I remember an Interface is a pure abstract class, right? So, which one's correct.

P.S. Sometime ago I was having a similar problem with Eclipse and generics - Eclipse only gave a warning about something (can't remember what exactly), but the javac said that it was an error - Google said something like "eclipse uses jikes, you use javac". So what, aren't there specs?!


Update: apparently JDK5 (or 1.5, suit yourself) does not allow that. So in order to get all the wrong @Overrides - set the Compliance level to 5.0 (Eclipse -> Window -> Preferences -> Java -> Compiler -> Compiler compliance level ) - and..... correct them. I have 29 left.

Sunday, June 22, 2008 6:51:41 PM UTC
<blockquote>Well, Eclipse, please do make up your mind.</blockquote>
In order for the Eclipse to make up their mind, it's crucial to report the problems you encounter in their bug tracking system.

For me implementing a method is different than overriding one - so I don't write @Override when implementing a method from interface.
Monday, June 23, 2008 8:36:01 AM UTC
But Eclipse doesn't see the difference, and eclipse does put @Override by default.

I'll check the possibilities for reporting :)
Wednesday, July 30, 2008 12:49:14 PM UTC
Good, it works.
i've stted level to 1.6 and now work
ettore
Saturday, October 11, 2008 7:40:36 PM UTC
Thank you. you save my time!
samitha
Sunday, March 08, 2009 4:55:31 PM UTC
When importing new source files, my Eclipse used to complain about those @Override things, if any. Setting compiler's compliance to 1.6 really solved the problem.
Ilja Astahovs
Sunday, March 08, 2009 4:57:13 PM UTC
worth mentioning, I switched from 1.5 compliance to 1.6
Ilja Astahovs
OpenID
Please login with either your OpenID above, or your details below.
Name
E-mail
(will show your gravatar icon)
Home page

Comment (Some html is allowed: a@href@title, blockquote@cite, strike) where the @ means "attribute." For example, you can use <a href="" title=""> or <blockquote cite="Scott">.  

Enter the code shown (prevents robots):

Live Comment Preview