Skip to content

Was ist der klarste Weg, um ein Paket in Java zu verwerfen?

Lösung:

Ich musste das vor kurzem machen und habe das benutzt package-info.java Datei, um das Paket zu verwerfen.

http://www.intertech.com/Blog/whats-package-info-java-for/

Füge hinzu ein package-info.java Datei zu Ihrem Paket nur mit der Paketdeklaration:

/**
 * @deprecated As of release 2.0, replaced by {@link com.acme.new.package}
 */
@Deprecated
package com.acme.old.package;

In Eclipse werden alle Stellen, an denen der Benutzer eine Klasse aus diesem Paket importiert, mit einer veralteten Warnung unterstrichen.

Du hast es selbst gesagt: Du willst alles verachten, was ist Innerhalb ein Paket, nicht das Paket selbst. Das Paket ist nichts anderes als ein Namespace und ein Namespace abzulehnen hätte eine andere Bedeutung - wie diesen Namensraum nicht mehr verwenden. Mögen Füge diesem Namespace keine neuen Elemente hinzu.

In Ihrem Fall schlage ich vor, dass Sie jede öffentliche Methode (und jedes Feld) jeder Klasse, die nicht mehr verwendet werden sollte, ablehnen. Dies wird in modernen IDEs sichtbar und Entwickler werden gewarnt, wenn sie die alten Klassen und Methoden verwenden möchten. Und Sie können Ihren Code durchsuchen und ihn Schritt für Schritt umgestalten, um Abhängigkeiten dieser Klassen und Methoden zu beseitigen.

Verwenden Sie AspectJ. Erstellen Sie einen Aspekt, der eine Compiler-Warnung ausgibt, wenn das Paket verwendet wird:

public aspect DeprecationAspect{

    declare warning :
        call(* foo.bar..*(..)) : "Package foo.bar is deprecated";

}

(Sie können AspectJ einfach zu Ihrem Build hinzufügen, wenn Sie Ameise oder Maven verwenden)

Click to rate this post!
[Total: 0 Average: 0]



Anderer Beitrag

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.