在Java 1.6中弃用

时间:2009-11-24 15:51:42

标签: java javadoc deprecated jdk1.6

在Java 1.5中,要弃用一个方法:

@Deprecated int foo(int bar) {
}

在Java 1.6中对此进行编译会产生以下结果:

  

语法错误,仅限注释   如果源级别为1.5

,则可用

有什么想法吗?

9 个答案:

答案 0 :(得分:9)

你必须告诉编译器使用1.6:

javac -source 1.6

或等效的IDE /构建系统(正如其他人所建议的那样)。

答案 1 :(得分:7)

首先,它的@Deprecated和第二个 - 仔细检查你是否真的在使用Java 1.6进行编译。你在用什么? javac的?蚀?

如果使用javac,请确保将JAVA_HOME设置为指向JDK 6,而不是JDK 1.4.2 如果使用Eclipse(或任何IDE),请右键单击项目>属性>并搜索编译器级别。

答案 2 :(得分:3)

  

语法错误,注释仅在源级别为1.5

时可用

这是典型的IDE错误消息。您已将工作区或项目配置为使用1.4或更高级别的合规性级别。假设它是Eclipse(它至少可以识别为Eclipse错误),那么你需要转到 Java >工作区首选项中的编译器,并将编译器合规性级别设置为1.5或更高版本。您还需要在Project的属性中的 Java Compiler 条目中进行检查。

答案 3 :(得分:2)

如果您使用的是Eclipse IDE,那么

1-在P​​roject Explorer中选择项目

2-转到项目 - >属性 - > Java编译器

3-选中“启用项目特定设置”选项

4-将“编译器合规级别”设置为“1.6”

注意:如果已设置为1.6,则将其更改为1.5。

5-按“应用”按钮。

IDE存在问题,有时它不会选择默认的选定编译器合规性级别。因此,您必须切换它并按应用按钮才能使更改生效。

答案 4 :(得分:2)

在阅读了迄今为止的回复之后,我可以看到对于涉及Eclipse的情况有一些困惑。

我遇到了相同的语法错误,检查了工作区Java合规性(窗口>首选项> Java>编译器),并且惊讶地看到编译器合规性级别为1.6。 然而,我注意到此首选项页面顶部的配置项目特定设置链接。该链接将您带到项目自己的设置。

您也可以从主菜单导航到那里。在这种情况下项目>属性> Java编译器。有一个标有启用项目设置的复选框,在我的情况下,这已经过检查,设置为1.4,但我不记得明确地设置了它。无论如何,您可以将合规性设置默认为工作台的设置或将项目设置更改为1.5或更高。

这应该可以解决语法错误。

答案 5 :(得分:1)

我怀疑你的源级别设置为低于而不是1.5。一般来说,它在Java 6中应该没问题。

你是如何编译的?如果是Eclipse,那么您的项目/工作区设置在Compiler / JDK Compliance Level下会说什么?

如果你正在使用javac,请运行

javac -version

检查您真正使用的版本。

答案 6 :(得分:0)

您确定要使用Java 1.6而不是1.4(或更早版本)进行编译吗? 你使用什么编译器?

答案 7 :(得分:0)

@Deprecated不是@Deprecate

如果您使用的是Eclipse,请确保将Java Compiler的设置设置为1.6合规性。

答案 8 :(得分:0)

即使在Eclipse中使用java 1.6,也会发生这种情况。单击该项目,然后右键单击它。转到属性并在Java编译器部分首先检查启用项目特定,然后手动选择1.6版本,即使它已经默认存在。这解决了我的问题。