在 Java 中,如果您导入一个已弃用的类:
import SomeDeprecatedClass;
您会收到以下警告:The type SomeDeprecatedClass is deprecated
有没有办法抑制这个警告?
在 Java 中,如果您导入一个已弃用的类:
import SomeDeprecatedClass;
您会收到以下警告:The type SomeDeprecatedClass is deprecated
有没有办法抑制这个警告?
避免警告:不要导入类
而是使用完全限定的类名
并在尽可能少的地方使用它。
在您的类或方法上使用此注释:
@SuppressWarnings( "deprecation" )
作为 hack,您不能进行导入并在代码中使用完全限定名称。
您也可以尝试 javac -Xlint:-deprecation 不确定是否可以解决它。
我通过将导入更改为:
import package.*
然后注释使用不推荐使用的类的方法@SuppressWarnings("deprecation")
假设您正在使用已弃用的方法(例如getUnicodeStream(String columnLabel)
in java.sql.ResultSet
)覆盖/实现接口,那么您将无法仅通过使用 annotation 来消除弃用警告@SuppressWarnings( "deprecation" )
,除非您还使用 annotation 注释相同的新方法@Deprecated
。这是合乎逻辑的,因为否则您可以通过覆盖其接口描述来取消弃用方法。
您可以使用:
javac FileName.java -Xlint:-deprecation
但这会给您警告,并告诉您导致弃用或使用弃用 API 的代码部分。现在,您可以运行带有这些警告的代码,也可以对代码进行适当的更改。
就我而言,我正在使用someListItem.addItem("red color")
,而编译器希望我使用someListItem.add("red color");
.