/qulice

Quality Police for Java projects: aggregator of Checkstyle, PMD, and SpotBugs

Primary LanguageJavaOtherNOASSERTION

logo

EO principles respected here DevOps By Rultor.com We recommend IntelliJ IDEA

mvn PDD status Maven Central codebeat badge codecov Lines of code Hits-of-Code License

Qulice is a static analysis quality control instrument for Java projects. It combines all the best static analysis instruments and pre-configure them, including Checkstyle and PMD. You don't need to use and configure them individually any more.

Read more at www.qulice.com.

Also, read this blog post first: Strict Control of Java Code Quality.

Just add this plugin to your pom.xml:

<build>
  <plugins>
    <plugin>
      <groupId>com.qulice</groupId>
      <artifactId>qulice-maven-plugin</artifactId>
      <configuration>
        <license>file:${basedir}/LICENSE.txt</license>
      </configuration>
      <executions>
        <execution>
          <goals>
            <goal>check</goal>
          </goals>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>

Then, make sure you have the JDK binaries (including the Java compiler javac) accessible from your PATH environment variable (e.g. if you have JDK 1.8.0 installed in Windows your PATH should contain something like C:\Program Files\Java\jdk1.8.0\bin).

Also remember that we support Maven version >= 3.1.0.

The path to license has to be declared in the following format: file:${basedir}/LICENSE.txt, it's the default value, one can use any full path instead of ${basedir}.

Read this short summary of typical mistakes you may encounter in your project.

In order to download schemas required for XML validation you might need proxy setup. Maven proxy is not supported, but standard JVM proxy works fine. To use it just add -Dhttp.proxyHost=HOST -Dhttp.proxyPort=PORT to your MAVEN_OPTS environment variable or to Maven command, e.g. mvn clean verify -Dhttp.proxyHost=HOST -Dhttp.proxyPort=PORT.

How to contribute

Fork repository, make changes, send us a pull request. We will review your changes and apply them to the master branch shortly, provided they don't violate our quality standards. To avoid frustration, before sending us your pull request please run full Maven build:

$ mvn clean install -Pqulice

Keep in mind that JDK7 and Maven 3.1.0 are the lowest versions you may use.