【发布时间】:2012-06-12 10:31:26
【问题描述】:
我正在使用 JRE 1.6 版本,并且在使用带有接口的 @Override 时发现了 JRE 1.5 的问题。
我导入了一个新项目 (Spring + Maven) 和 Eclipse,每当任何接口方法被覆盖时,每个 @Override 注释都会出错。
到目前为止我尝试过的事情
- 检查项目和工作区特定的 JRE 和合规级别,它设置为 1.6 版本。
- 在构建路径上检查了 JRE 库,它也是一样的。
- 将项目方面的 Java 版本更改为 1.6(不知道是否有帮助)
- Maven 是否进行了清理和安装(至今已安装了数百次)
- 注释的禁用错误/警告仍然没有运气
- Eclipse 重启(愚蠢的事情,但帮了我很多时间)
- 如果我没有任何其他尝试,最后一个选项将删除所有 .setting 和 .project 文件。
编辑 1:
我收到以下错误
The method XXX of type XXX must override a superclass method.
编辑 2:
代码示例
接口声明
public interface HelperService {
public RequisitionTypeDTO getRequisitionTypeDTO(int id) throws Exception;
}
实施:
@Service
public class HelperServiceImpl implements HelperService{
@Override // Getting error for this line
public RequisitionTypeDTO getRequisitionTypeDTO(int id) throws Exception{
// Bla Bla Bla
}
}
编辑 3:
无论此错误如何,我都能够成功构建和运行我的应用程序。只是对源代码中的红色错误标志不满意。
【问题讨论】:
-
这可能没什么,但既然你排除了其他一切:那些真的是
@override注释吗?它应该是@Override,大写O。 -
@JoachimSauer:是的,
O。请告诉我这是怎么回事? -
@Ajinkya:注解名称是类名,因此它们与其他所有内容一样区分大小写。它可能是一些完全不相关的
override注释(但即使它不太可能产生这类错误)。总结一下:这无关紧要,但我没有看到任何其他暗示问题的地方。 -
对不起,除非您显示您遇到的错误是什么,否则无法提供帮助。另外,尝试创建一个新的 Java 项目并创建一个实现
Runnable的类。看看你是否仍然在@Override上遇到run()方法实现的错误。 -
@adarshr:我添加了错误详细信息。其他项目未出现此错误。
标签: java eclipse annotations