如何禁止标记为depreceated的API的警告。 @SuppressWarnings(“弃用”)似乎没有抑制它

时间:2013-06-20 05:37:15

标签: java annotations

我尝试使用@SuppressWarnings(“弃用”)禁用已弃用API的警告。试图使用make构建。仍然收到编译器警告。

2 个答案:

答案 0 :(得分:0)

应尽快更换弃用的方法。您可以检查javadoc以查看应该替换它的内容。

“抑制”警告的一种方法是使用较旧的编译器编译代码,其中您使用的方法尚未弃用。

另一种方法是使用-Xlint编译代码:弃用

javac -Xlint:deprecation Application.java

答案 1 :(得分:0)

@SuppressWarnings("deprecation")不适用于导入。在这种情况下 - 如果您可以自由地执行此操作 - 删除导入并使用代码中的完整名称对类进行寻址。这样,@SuppressWarnings("deprecation")将成功处理它。

警告:

import net.example.fancy.DeprecatedClass;

public class FooBar {
    @SuppressWarnings("deprecation")
    private DeprecatedClass depr;
}

没有警告:

public class FooBar {
    @SuppressWarnings("deprecation")
    private net.example.fancy.DeprecatedClass depr;
}