Warnmeldung "verwendet oder überschreibt eine deprecated API" aufgetreten während der code-Kompilierung
Den ich kompiliert habe, mein Programm und ich bekam die folgende Fehlermeldung. Wie soll ich es lösen?
Note: ClientThreadClients.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Was Sie tun sollten, ist zu tun, was die Warnung Nachrichten sagen. Kompilieren Sie die Klasse mit der
-Xlint:deprecation
option.Wird der compiler dir sagen, was deprecated API, die Sie verwenden oder überschreiben.
(Alternativ, wenn Sie zeigte uns den source-code dieser Klasse, können wir in der Lage sein, das problem für Sie ... oder kompilieren Sie es uns.)
Aber ich werde denke, dass Sie eine der veralteten Methoden in der
Thread
Klasse:countStackFrames()
destroy()
pause()
resume()
stop()
stop(Throwable)
suspend()
Diese Methoden sind entweder unzuverlässig, unsicher oder beides. Sie sind dringend empfohlen, Sie nicht zu verwenden. Diese Erklärung Lesen: "Warum sind Thread.stop, Thread.suspend und Thread.resume Veraltet?".
Sobald Sie festgestellt haben, die API, die das problem verursacht, es gibt zwei Ansätze zur "Lösung" der Fehler.
Lesen Sie die javadocs für die veraltete API, um herauszufinden, warum ist es veraltet. Dann basierend auf dem, was die javadocs sagen, und der Kontext, die Sie arbeiten, einen Weg zu finden, ersetzen Sie code verwenden, der das veraltete element mit etwas besser.
Können Sie die
@SuppressWarnings("deprecation")
Anmerkung zu sagen, dass der compiler "ruhig sein" über es. Dies ist in der Regel eine schlechte Idee:Schritt 1: Finden Sie heraus, welche deprecated API, die mithilfe von code. Wenn Sie eine moderne IDE (eclipse oder ein ähnliches tool), den veralteten code wird deutlich markiert, in der Regel mit einem "Durchgestrichen". Wenn Sie kompilieren aus der Eingabeaufforderung hinzufügen
-Xlint:deprecation
auf die Kommandozeile beim kompilieren.Schritt 2. Lesen Sie die Dokumentation für das veraltete API zu lernen, wie um es zu ersetzen.