2011-11-30 5 views
7

Wiele standardowych narzędzi do sprawdzania kodu źródłowego (PMD, FindBugs, Checkstyles) realizuje regułę "Równania ciągów", w której używa się == (lub !=) podczas porównywania łańcuchy mogą być wykrywane i zgłaszane jako błąd.Sprawdzanie plików Java dla == Błąd, nie ograniczając się do ciągów znaków

Szukam pisać (lub skonfigurować!) Podobną regułę, która działa na zestaw innych typów obiektów w moim API.

//Want to detect things like: 
Instance a = ...; 
Instance b = ...; 
if (a == b) //Error here, not using a.equals(b) 

Patrząc na PMD & FindBugs nie jest oczywiste (lub proste) sposobem na to, czy ktoś natknąć się coś takiego?

Wiwaty, Ro

+0

Warto zauważyć, że używanie == z obiektami może być rozsądną rzeczą. Kiedy chcesz wiedzieć, czy to dosłownie ten sam obiekt, do którego się odwołujesz, nie tylko ten, który wygląda tak samo –

Odpowiedz

2

nie CompareObjectsWithEquals w PMD działa dla Ciebie?

+0

Niezupełnie, to za dużo ... Muszę skonfigurować regułę, aby uwzględniała tylko niektóre Klasy. Ale dzięki !, to świetny punkt wyjścia. –

Powiązane problemy