Domanda

In Java, se si importa una classe deprecato:

import SomeDeprecatedClass;

Si ottiene questo avvertimento: The type SomeDeprecatedClass is deprecated

C'è un modo per sopprimere questo avvertimento?

È stato utile?

Soluzione

Con questa annotazione sulla vostra classe o un metodo:

@SuppressWarnings( "deprecation" )

Altri suggerimenti

Per evitare l'avvertimento: fare non importare la classe

anziché utilizzare il nome completo della classe

e utilizzarlo nel minor numero di posti possibile.

Come un hack non si può fare l'importazione e utilizzare il nome completo all'interno del codice.

Si potrebbe anche provare javac -Xlint: -deprecation non so se questo sarebbe affrontare il problema

.

Ho risolto questo cambiando l'importazione di:

import package.*

quindi annotando il metodo che utilizza le classi obsoleti with@SuppressWarnings("deprecation")

Si supponga che si sta sovrascrivere / implementazione di un'interfaccia con un metodo deprecato (come ad esempio il getUnicodeStream (String columnLabel) in java.sql.ResultSet) allora non sarà sbarazzarsi di warning di deprecazione semplicemente utilizzando i @SuppressWarnings di annotazione ( " deprecazione"), a meno che anche annotare lo stesso nuovo metodo con l'annotazione @deprecated. Questo è logico, perché altrimenti si potrebbe "undeprecate" un metodo semplicemente sovrascrivendo la sua descrizione dell'interfaccia.

è possibile utilizzare:

  

javac FileName.java -Xlint: -deprecation

Ma allora questo vi darà avvertimenti e anche dirvi la parte del codice che sta causando deprecazione o utilizzando API deprecato. Ora, o è possibile eseguire il codice con questi avvertimenti o apportare modifiche appropriate nel codice.

Nel mio caso ho usato someListItem.addItem("red color") mentre il compilatore mi voleva usare someListItem.add("red color");.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top