2011-12-05 3 views
3

에만 번들 규칙 세트를 사용하며, 이것은 내가 그것을 설정 한 방법입니다받는다는-PMD-플러그인 내 프로젝트에 받는다는-pmd를-플러그인을 사용하고

<reporting> 
<plugins> 
    <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-pmd-plugin</artifactId> 
    <version>2.6</version> 
    <configuration> 
    <linkXref>true</linkXref> 
    <sourceEncoding>UTF-8</sourceEncoding> 
    <minimumTokens>100</minimumTokens> 
    <targetJdk>${targetJdk}</targetJdk> 
     <rulesets> 
      <ruleset>${maven.pmd.rulesetfiles}</ruleset> 
     </rulesets> 
    </configuration> 
    </plugin> 
</plugins> 
</reporting> 

여기에 위의 구성

에 사용되는 속성입니다
<properties> 
<spring.version>3.0.6.RELEASE</spring.version> 
<basedir>C:\Users\Q4\workspace\project</basedir> 
<maven.pmd.rulesetfiles>${basedir}\pmdRuleset.xml</maven.pmd.rulesetfiles> 
<targetJdk>1.5</targetJdk> 
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
</properties> 

문제는 mvn pmd : check를 실행하면 문제가 발생합니다. 기본 8 건의 위반, 즉 기본, 사용되지 않은 코드 및 가져 오기 만 제공합니다. 사용자 정의 룰 세트 파일에 나열한 모든 룰을 사용하지는 않습니다. 심지어 사용자 정의 ruleset 파일을 사용하지 않고 ruleset에서 logging-java.xml 및 strings.xml을 직접 사용해 보았지만 여전히 작동하지 않습니다.

mvn pmd : pmd를 실행하면 빌드 성공을 얻지 만 오류가 여전히 내 대상 폴더에 표시됩니다. 왜 여기서 성공을 거둘 수 있습니까?

답변

4

간단히 말해서보고 섹션의 플러그인과 함께 빌드 섹션에 플러그인을 추가하여이 문제를 해결했습니다.

어떻게 든 모든 규칙 집합을 실행할 수 있어야합니다. 이전에 필자는 빌드 및 배포 단계에서 플러그인을 실행하려는 경우에만 플러그인을 빌드에 삽입한다고 생각했습니다.

+0

'mvn site'를 실행하면 규칙 집합이 올바르게 고려됩니다. – herau