2016-12-13 35 views
12

Java EE + IntelliJ Idea 2016.3: Napisałem klasę i zadeklarowałem prywatne pole z adnotacją @Inject. Udało mi się pozbyć powiadomienia "nieużywana deklaracja" z okna "wyników inspekcji" poprzez dodanie ustawień javax.inject.Inject do -> edytor -> inspekcje -> java -> nadmiarowość deklaracji -> nieużywane deklaracje -> punkty wejścia -> adnotacje - > zaznacz pole jako niejawnie napisane, gdy jest opisane przez (na podstawie this post). Niestety pole jest nadal podkreślone, a na pasku przewijania znajduje się żółty znacznik. Czy konfiguruję to osobno, czy też robię coś nie tak?Ostrzeżenie "Zmienna nigdy nie jest przypisana" w IntelliJ IDEA może być wyłączone tylko "częściowo"

+0

Pokaż nam kod, proszę ... – byxor

Odpowiedz

15

Istnieją dwa oddzielne ostrzeżenia. Mówi się, że pole to nigdy nie przypisało wartości, którą właśnie wyłączyłeś. Drugi mówi, że pole to było nigdy nie używane, które jest ostrzeżeniem, które otrzymujesz.

Dodaj Inject do ustawienia -> Editor -> Kontrola -> Java -> redundancji deklaracja -> niewykorzystane deklaracje -> Punkty wejście -> adnotacje -> Oznacz jako punkt wyjścia, jeśli odnotowany przez

+0

Dodanie adnotacji '@ Inject' do sekcji" oznacz jako punktu wejścia "zamiast" pola znacznika jako niejawnie zapisanego " Jednak zanim to zrobiłem, komunikat ostrzegawczy brzmiał, że "Rejestrator pola prywatnego" nigdy nie jest przypisany, a nie ** nigdy nie był używany **, jak powiedziałeś. * Ja * używam pola 'logger' później w kodzie. Jednocześnie inspektor kodu zgłosił "Nie znaleziono podejrzanego kodu" - być może jest to błąd w Idea: – rychu

+1

Należy również pamiętać, że Alt-Enter udostępnia wpisy menu dotyczące wyłączania ostrzeżeń –

+1

"Alt-Enter udostępnia wpisy menu, jak włączać ostrzeżenia off "- tak, ale moim pomysłem kieruje się tylko do" nieużywanej deklaracji ", trzeba wiedzieć, aby kliknąć" punkty wejścia "i" adnotacje " – rychu

1

Wydaje się, że to był błąd w IDEA. Właśnie zaktualizowałem do IDEA 2016.3.1 i teraz @Inject i @Resource adnotacje umieszczone w sekcji "punkty wejściowe" nie działają - muszą być umieszczone w oknie "pola" (chociaż gdy są w "punktach wejścia" "sekcja Wciąż mogę obserwować" stare "zachowanie tj. adnotowane pola nie są wykrywane przez inspekcję kodu, ale są podkreślone w edytorze i widoczny jest żółty znacznik).

2

Podświetl pole, wpisz Alt + Enter "Windows" lub ⌥⏎ "Mac" lub po prostu kliknij żarówkę. Wybierz opcję "Pomiń dla pól opatrzonych adnotacją {nazwa komentarza}"