0

在 Eclipse 中,我做了:Source > Clean up,并根据这些规则进行了清理:

  • 使用声明类型更改对静态成员的非静态访问
  • 将对静态成员的间接访问更改为直接访问(通过子类型访问)
  • 删除未使用的导入
  • 添加缺少的“@Override”注释
  • 添加缺少的“@Deprecated”注释
  • 删除不必要的演员表
  • 删除不必要的“$NON-NLS$”标签

但我似乎无法再编译它了。我收到以下错误:

错误预验证类 com.myapp.blackberry.Override java/lang/NoClassDefFoundError: java/lang/annotation/Annotation Error!: Error: preverifier failed: C:\eclipse\plugins\net.rim.ejde.componentpack6.0.0_6.0.0 .29\components\bin\preverify.exe -d C:\DOCUME ...打包项目myapp失败(耗时0.422秒)

当我将鼠标悬停在@Override 上时,它给了我建议“无法将覆盖解析为一种类型”

我现在不知道该怎么办..

4

2 回答 2

3

Blackberry 开发建立在 j2me 之上,它具有 Java 1.3 的语言特性。这意味着它不支持注释。您可以删除 @Override 注释,您的代码将正常工作。记住这些是可选的,尽管无论如何推荐。

我所做的是写 //@Override 代替。当/如果将来添加注释时,很容易进行正则表达式替换并删除注释标记。

于 2010-10-19T18:22:15.827 回答
1

似乎不可能:

这笔交易是 Java ME 使用 Java 语言规范 1.4 版。您不能使用 Java 5 语言功能。

似乎你将不得不做没有注释......

于 2010-10-19T18:22:52.790 回答