2014-12-16 2 views
0

checkstyle을 사용하여 코드에서 위반 사항을 확인하고 있습니다. 내 구성의 모듈 중 하나는 중복 코드에 관한 것입니다. StrictDuplicateCode를 사용하고 있기 때문에 javaDoc에 대한 복제도 위반하게됩니다.Checkstyle - 중복 확인 중에 Javadoc을 무시합니다.

아무도 내 목표를 달성하기 위해 나를 안내 할 수 있습니까? 한편

, 나는 다음과 같은 시도했지만 작동하지 않습니다 :

내가

<?xml version="1.0"?> 
    <!DOCTYPE suppressions PUBLIC 
    "-//Puppy Crawl//DTD Suppressions 1.1//EN" 
    "http://www.puppycrawl.com/dtds/suppressions_1_1.dtd"> 
    <suppressions> 
    <suppress checks="JavadocStyleCheck" 
       files="SomeClass.java" 
    /> 
    </suppressions> 

그런 내용은 다음과 별도의 XML 파일 (JavaDocSup.xml)을 생성 자바 문서와 중복을 억제하기 주 구성 파일에 다음 코드를 추가했습니다. 다음은 설정 파일의 코드입니다.

<?xml version="1.0" encoding="UTF-8"?> 
    <!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.3//EN" 
    "http://www.puppycrawl.com/dtds/configuration_1_3.dtd"> 

    <module name="Checker"> 
     <property name="severity" value="warning"/> 
     <module name="TreeWalker"> 
     <module name="MethodLength"> 
      <property name="max" value="50"/> 
     </module> 
    <module name="ParameterNumber"> 
     <property name="max" value="4"/> 
    </module> 
    <module name="CyclomaticComplexity"/> 
    </module> 
    <module name="StrictDuplicateCode"> 
    <property name="fileExtensions" value="java"/> 
    </module> 
    <module name="SuppressionFilter"> 
    <property name="file" value="${samedir}/JavaDocSup.xml"/> 
    </module> 
</module> 

코드에서 checkstyle을 실행해도 Java 문서에서 중복 행이 계속 감지됩니다. 는 = "JavadocStyleCheck는"올바른 않도록하는 검사입니다? 어떤 도움이 높게 평가 될 것입니다. 감사합니다.

+0

일반적으로 서로 다른 검사는 서로 독립적입니다. 따라서 * JavadocStyle * 문제를 억제하면 StrictDuplicateCode * 검사에 아무런 영향을 미치지 않습니다. * StrictDuplicateCode *에 새 옵션을 요청해야합니다. –

답변

0

이 Checkstyle의 StrictDuplicateCode이, 따라서 그것 (Checkstyle 6.2부터) thrown away의 비효율적 인 것으로 판명. 같은 다른 도구를 사용해보십시오 PMD의 CPD

당신이 현재 Checkstyle 버전에 충실하려는 경우 경우에만 최소 20 선이 일치하는 위반을 던져 <property name="min" value="20"/>를 추가하는 시도 할 수 있습니다.

(일부 복제 탐지 도구는 언급 도구 섹션의 Wikipedia)