PMD, czyli Programming Mistake Detector…
Programming Mistake Detector jest jednym z wielu proponowanych rozwinięć skrótu PMD, ale według mnie właśnie to rozwinięcie najdokładniej opisuje przeznaczenie opisywanej biblioteki.
PMD jest narzędziem, którego zadaniem jest znajdowanie w kodzie źródłowym potencjalnych błędów, takich jak puste bloki try/catch/finally, niewykorzystywane fragmenty kodu, nieoptymalne wykorzystanie klas String i StringBuffer, niepotrzebne użycie bloków if w pętlach, które można zamienić na pętle while oraz wykrywanie duplikatów bloków kodu.