2015-09-16 16 views
5

zaktualizowałem moją Sonar do wersji 5.1.2, a problem Methods should not be empty na ten kod pojawia się:Sonar Metody nie powinna być pusta w konstruktorze

public User() {} 

public User (String login) { 
    this.login = login; 
} 

Wydaje się, że to błąd. Czy mam rację? Ponieważ nie zdarzyło się to wcześniej.

+0

Co to jest wersja wtyczki java? jaki jest klucz reguły podnoszonej kwestii? – benzonico

+0

'Dodaj zagnieżdżony komentarz wyjaśniający, dlaczego ta metoda jest pusta, wyrzuć wyjątek UnsupportedOperationException lub zakończ implementację. Ale to jest konstruktor. Nie wymaga się więc wdrożenia. Bo jeśli to zrobię, będę komentować "nic nie rób", co nie znaczy nic. –

+0

Czy możesz sprecyzować dwie informacje, o które prosiłem? Dlaczego musiałbyś jawnie zadeklarować pusty publiczny konstruktor bez argumentów (jeśli usuniesz ten konstruktor, twój kod będzie zachowywał się tak samo, jak będzie on deklarowany w sposób dorozumiany)? – benzonico

Odpowiedz

5

Znalazłem tę dżirę, to błąd sonaru.

https://jira.sonarsource.com/browse/SONARJAVA-1138

+1

Po sprawdzeniu wydaje się, że to nie ten błąd. W rzeczywistości ten problem został już naprawiony. To może być ta poprawka, która spowodowała pojawienie się/ponowne pojawienie się bieżącego problemu. Jednak powyższy link nie jest * problemem, na który trzeba czekać, aby zostać rozwiązanym (ponieważ jest to stary). –

0

naprawdę wydaje się być nieoczekiwane zachowanie. Myślę, że to była odpowiedź na bilet powyżej tego, co ją spowodowało. Próbuję porozmawiać z programistą, aby ustawić regułę S1186. Jeśli chcesz wykonać:

https://jira.sonarsource.com/browse/SONARJAVA-1138

+0

prosimy o kontakt na adres [email protected] zamiast powtarzania odpowiedzi na SO lub komentowania zamkniętego biletu. Dzięki. – benzonico

Powiązane problemy