在Java中,如果您导入一个已过时的类:
import SomeDeprecatedClass;
你会收到这样的警告:The type SomeDeprecatedClass is deprecated
有方法可以抑制这个警告吗?
import SomeDeprecatedClass;
你会收到这样的警告:The type SomeDeprecatedClass is deprecated
有方法可以抑制这个警告吗?
将此注释用于您的类或方法:
@SuppressWarnings("deprecation")
自 Java 9 开始,您可能需要添加:@SuppressWarnings("removal")
如果类被注解为:
@Deprecated(since = "3.14", forRemoval = true)
作为一种hack,您可以不导入并在代码中使用完全限定名称。
您也可以尝试javac -Xlint:-deprecation,不确定这是否会解决问题。
我通过更改导入为以下内容来解决这个问题:
import package.*
使用@SuppressWarnings("deprecation")
注释已经弃用的类的方法。
java.sql.ResultSet
中的getUnicodeStream(String columnLabel)
),那么仅使用注释@SuppressWarnings("deprecation")
是无法消除弃用警告的,除非您还使用@Deprecated
注释对同一新方法进行注释。这是合理的,因为否则您可以通过覆盖其接口描述来取消弃用方法。然后您将看到警告,并且知道哪部分代码导致了过时或使用过时的API。您可以带着这些警告运行代码,或者对代码进行适当修改。javac FileName.java -Xlint:-deprecation
someListItem.addItem("red color")
,但编译器希望我使用someListItem.add("red color");
。