Подавление устаревшего импортного предупреждения в Java

В Java, если вы импортируете устаревший класс:

import SomeDeprecatedClass;

Вы получите это предупреждение: The type SomeDeprecatedClass is deprecated

Есть ли способ подавить это предупреждение?

Ответ 1

Используйте эту аннотацию для своего класса или метода:

@SuppressWarnings( "deprecation" )

Ответ 2

Чтобы избежать предупреждения: не импортируйте класс

вместо этого используйте полное имя класса

и использовать его как можно в нескольких местах.

Ответ 3

Я решил это, изменив импорт:

import package.*

затем аннотируя метод, в котором использовались устаревшие классы с @SuppressWarnings("deprecation")

Ответ 4

В качестве взлома вы не можете выполнить импорт и использовать полное имя внутри кода.

Вы также можете попробовать javac -Xlint: -deprecation не уверен, что бы это затронуло его.

Ответ 5

Предположим, что вы переопределяете/реализуете интерфейс с устаревшим методом (например, getUnicodeStream (String columnLabel) в java.sql.ResultSet), тогда вы не избавитесь от предупреждений об устаревании, просто используя аннотацию @SuppressWarnings ( "" устаревание "), если вы также не аннотируете тот же новый метод с аннотацией @Deprecated. Это логично, потому что в противном случае вы могли бы" переопределить" метод, просто переопределив его описание интерфейса.

Ответ 6

вы можете использовать:

javac FileName.java -Xlint: -deprecation

Но тогда это даст вам предупреждения, а также сообщит вам часть кода, вызывающего устаревание или использование устаревшего API. Теперь либо вы можете запустить свой код с этими предупреждениями, либо внести соответствующие изменения в код.

В моем случае я использовал someListItem.addItem("red color"), тогда как компилятор хотел, чтобы я использовал someListItem.add("red color");.