在Java 1.5中,要弃用一个方法,你需要:
@Deprecated int foo(int bar) {
}
在Java 1.6中编译会出现以下错误:
语法错误,注释只能在源代码级别为1.5时使用
有什么想法?
@Deprecated int foo(int bar) {
}
在Java 1.6中编译会出现以下错误:
语法错误,注释只能在源代码级别为1.5时使用
有什么想法?
您需要告诉编译器使用1.6版本:
javac -source 1.6
首先,它是@Deprecated
的,其次 - 请仔细检查您是否真的正在使用Java 1.6进行编译。您使用的是什么? javac?Eclipse?
如果使用javac,请确保您的JAVA_HOME设置指向JDK 6,而不是JDK 1.4.2 如果使用Eclipse(或任何IDE),右键单击项目>属性>并搜索编译器级别。
语法错误,注释仅在源代码级别为1.5时可用
这是一个典型的IDE错误消息。您已将工作区或项目配置为使用符合级别1.4或更早版本。假设它是Eclipse(至少可以识别为Eclipse错误),那么您需要在工作区首选项中转到Java > 编译器并将编译器符合级别设置为1.5或更新版本。您还需要在项目属性的Java编译器条目中检查此设置。
我猜测你的源代码级别设置低于1.5。在Java 6中通常应该没问题。
你是如何编译的?如果是使用Eclipse,那么在编译器/JDK兼容级别下,你的项目/工作区设置是什么?
如果你正在使用javac,请运行
javac -version
检查你实际使用的版本。
你确定你正在使用Java 1.6而不是1.4(或更早版本)进行编译吗? 你在使用哪个编译器?
@Deprecated
不是 @Deprecate
如果您正在使用 Eclipse,请确保 Java 编译器的设置为 1.6 兼容性。
即使在Eclipse中使用java 1.6,这种情况也可能发生。 单击项目,然后右键单击它。 转到属性,在Java编译器部分首先勾选启用项目特定,然后手动选择1.6版本,即使默认情况下已经存在。 这解决了我的问题。