2011-07-31 7 views
7

Czy jest możliwe, aby kompilator generował ostrzeżenie po napotkaniu zdefiniowanej przez użytkownika wartości liczbowej? Coś podobnego do adnotacji @Deprecated?Generowanie ostrzeżenia kompilatora za pomocą adnotacji zdefiniowanej przez użytkownika

Dzięki

+0

Dlaczego powinno być możliwe, zwyczaj annota jest dość legalna? Ostrzeżenie dla @Deprecated jest wbudowaną funkcją. Sprawdź swoje IDE, czy zapewnia wbudowaną obsługę niestandardowej analizy kodu statycznego ... – home

+0

@home: Chcę opisać metody, w których zrobiłem pewne kodowanie, ale skomentowałem to, ponieważ nie jest to wymagane w tej chwili. Nie chcę dalej tego szukać. Powinien być wyraźnie widoczny podczas przeglądania kodu. Używam Eclipse Helios. Czy można na nim przeprowadzić analizę kodu? Nie byłem w stanie go zlokalizować. Dzięki –

+1

Dlaczego nie używać tagu // TODO w komentarzach? Eclipse zbierz je wszystkie na listę zadań. Są również podświetlone na niebiesko wzdłuż prawej krawędzi okna edytora. (Ostrzeżenia są podświetlone na żółto.) – jkeeler

Odpowiedz

3

podstawie oryginalnego pytania i komentarze, zakładam, że starasz się wykonać następujące czynności:

  • Kod Oznacz jako niepełny (z ostrzeżeniem kompilatora), więc inni deweloperzy nie używać tego jeszcze.
  • Identyfikacja niekompletnego kodu w IDE w późniejszym czasie.

Nie wierzę, że można oznaczyć kod ostrzeżeniem dla kompilatora. Znacznik @Deprecated jest wypiekany w kompilatorze. Bardziej powszechnym sposobem wskazywania sposobu jest niepełna jest wyrzucanie wyjątek:

throw new UnsupportedOperationException("Not implemented yet");

Efekt ten nie jest realizowany do wykonywania, ale inni producenci powinny być jednostka badając ich kodu.

Jeśli chodzi o identyfikowanie niekompletnego kodu, nadal będę odnosił się do mojego oryginalnego komentarza. Użyj znacznika komentarza TODO, a Eclipse utworzy dla ciebie listę zadań. Jeśli na Twojej liście jest zaśmiecone automatycznie wygenerowanym kodem, który nie został oczyszczony, możesz użyć FIXME, XXX lub zdefiniować własną. Powinieneś wtedy móc filtrować swoją listę.

1

Jest to możliwe poprzez procesory adnotacji api

Oto Lekki Javac Ostrzeżenie Adnotacja biblioteka https://github.com/pushtorefresh/javac-warning-annotation

Zastosowanie:

// some code... 

@Warning("This method should be refactored") 
public void someCodeWhichYouNeedAtTheMomentButYouWantToRefactorItLater() { 
    // bad stuff going on here... 
}