Я новичок в PMD/CPD
. Я настроил PMD
в моей Maven проекта, как показано ниже:PMD/CPD не может обнаружить повторяющийся код
<groupId>org.parent</groupId>
<artifactId>CustRestExampleOsgi</artifactId>
<version>1.0</version>
<packaging>pom</packaging>
<name>CustRestExampleOsgii</name>
<modules>
<module>CustImplProvider</module>
<module>CustInterface</module>
<module>RestCustConsumer</module>
</modules>
<properties>
<karaf.deploy.build.folder>
G:\apache-karaf-3.0.0.RC1\deploy
</karaf.deploy.build.folder>
</properties>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
<version>3.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId>
<version>2.3</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.9.1</version>
</plugin>
</plugins>
</reporting>
Мой Maven проект компилирует нормально и генерировать все отчеты по mvn jxr:jxr site
. Но я не могу найти результат, который показывает дубликат кода. Чтобы проверить это, я ввел повторяющийся код намеренно в моем коде, как:
@Override
public boolean equals(Object object) {
// TODO: Warning - this method won't work in the case the id fields are not set
if (!(object instanceof Address)) {
return false;
}
Address other = (Address) object;
if ((this.id == null && other.id != null)
|| (this.id != null && !this.id.equals(other.id))) {
return false;
}
if (!(object instanceof Address)) { //Duplicate is here
return false;
}
return true;
}
Но всегда CPD
не показывает никаких проблем обнаружено в исходном коде. Однако я могу найти PMD
отчетов нормально. Не хватает ли какой-либо конфигурации или набора правил?
Просьба помочь!
oh wow !! Он работал отлично, как ожидалось. Спасибо!!! :-) – Amrit