My theory is that your Eclipse is configured for JDK 1.6 compliance, but your Ant (or whatever) build is compiling with a JDK 1.5 compiler.
There was a change in the @Override annotation between JDK 1.5. and 1.6. In 1.5, it could only be used when a concrete method actually overrides a concrete method in a superclass. In JDK 1.6, it can also be used when the annotated method implements an abstract method defined in an interface or superclass.
The way to set Eclipse's compliance level is to open Windows>Preferences, select the Java>Compiler pane, and change the "Java Compiler Compliance" setting to 1.5. Then use Apply or OK to apply the preference change.
(AFAIK, there is no way to get Eclipse to give you 1.5 style warnings in 1.6 compliance mode.)