2017-07-02 5 views
1

Je souhaite intégrer les plug-ins Checkstyle et PMD dans Jenkins pour vérifier automatiquement le code de qualité. Je suivi les instructions de: http://www.treselle.com/blog/static-code-analysis-jenkins/Comment intégrer Ant avec les plug-ins Checkstyle et PMD dans Jenkins

Mon build.xml dans l'espace de travail a été annexé ces codes:

<taskdef name="checkstyle" classpath="WEB-INF/libs/checkstyle-5.6.jar" classname="com.puppycrawl.tools.checkstyle.CheckStyleTask" /> 
<target name="checkstyle" description="Generates a report of code convention violations."> 
    <checkstyle config="sun_checks.xml" failOnViolation="false"> 
     <formatter type="xml" tofile="checkstyle_report.xml" /> 
     <fileset dir="WEB-INF/src" includes="**/*.java" /> 
    </checkstyle> 
</target> 
<taskdef name="pmd" classpath="WEB-INF/libs/pmd.jar" classname="net.sourceforge.pmd.ant.PMDTask" /> 
<target name="pmd" depends="compress"> 
    <pmd rulesetfiles="java-imports"> 
     <formatter type="xml" toFile="pmd_report.x.ml" /> 
     <fileset dir="WEB-INF/src"> 
      <include name="**/*.java" /> 
     </fileset> 
    </pmd> 
</target> 

I bibliothèque assez également ajouté, mais quand je l'emploi bâti des, je suis une exception:

taskdef class com.puppycrawl.tools.checkstyle.CheckStyleTask cannot be found using the classloader AntClassLoader[] 

Pourquoi une telle erreur existe-t-elle? Et comment les intégrer correctement?

Merci beaucoup!

Répondre

0

Essayez la version ultérieure du style de vérification en tant que checkstyle-8.0-all.jar. Voir example

0

classname = "com.puppycrawl.tools.checkstyle.CheckStyleTask" /> com.puppycrawl.tools.checkstyle.CheckStyleTask de classe taskdef ne peut pas être trouvé

La classe est nommée CheckstyleAntTask .

Voir https://github.com/checkstyle/checkstyle/blob/master/config/ant-phase-verify.xml sur un exemple sur la façon d'utiliser CheckstyleAntTask.

checkstyle-5.6.jar

Je recommande la mise à niveau vers une version plus récente. Checkstyle est actuellement en version 8.