static0886
static0886

Reputation: 784

Setup checkstyle as part of java project build process

I am working on adding checkstyle to the build process of a java project. The results of the checkstyle will be later displayed on jenkins. I am using java7 & netbeans 7.2.1

For most of the work I am following the instructions on this page: http://checkstyle.sourceforge.net/anttask.html

However, i'm a beginner in java (& jenkins) and some of the instructions do not make sense to me:

1- The doc says: "To use the task in a build file, you will need the following taskdef declaration: ". Question: is this to be added in the build.xml file? or where?

2- Then the doc goes on describing a set of parameters and provides some examples. Are these to be added to build.xml too? or?

3- Checkstyle uses a configuration file. I'll be using the standard sun_checks.xml. Where should this be placed?

If someone can point me out to a step by step tutorial for the whole process, i'd be most grateful. Thx in advance for all answers

I am using the following in my build.xml:

<taskdef resource="checkstyletask.properties"
     classpath="libs/checkstyle-5.6-all.jar"/>

<target name="checkstyle"
        description="Generates a report of code convention violations.">

    <checkstyle config="sun_checks.xml"
                  failureProperty="checkstyle.failure"
                  failOnViolation="false">
        <fileset dir="src" includes="**/*.java"/>
        <formatter type="xml" toFile="checkstyle-results.xml"/>
    </checkstyle>

    <style in="checkstyle-results.xml" out="checkstyle_report.html" style="checkstyle.xsl"/>

</target>

Upvotes: 0

Views: 1142

Answers (2)

nuaavee
nuaavee

Reputation: 1356

I am not sure what build management you are using. If you are using Gradle, you can use gradle-estilo-plugin. It sets up the entire checkstyle configuration you need directly from a gradle config block.

Here is what you'll need to get started:

buildscript {
  repositories {
    mavenCentral()
  }

  dependencies {
    classpath 'net.anshulverma.gradle:gradle-estilo-plugin:0.4.8'
  }
}

apply plugin: 'net.anshulverma.gradle.estilo'

estilo {
  source 'sun'
}

Upvotes: 0

JB Nizet
JB Nizet

Reputation: 691685

  1. yes, you must add it in your build.xml

  2. These attributes and elements are attributes and elements of the <checkstyle> ant task, which you can use in your build file thanks to the taskdef you have added in point 1. And yes, this <checkstyle> task must be used in your build.xml.

  3. You place it wherever you want. you just need to give its path to the <checkstyle> task using its config attribute.

Upvotes: 1

Related Questions