Static Analysis for Groovy: Less Bugs, Better Code

CodeNarc analyzes Groovy code for defects, bad practices, inconsistencies, style issues and more. A flexible framework for rules, rulesets and custom rules means it's easy to configure CodeNarc to fit into your project. Build tool, framework support, and report generation are all enterprise ready.

CodeNarc Web Console let's you play with the latest snapshot, containing over 175 rules with more added each week. Enter some text, click execute, and see the violations. Or run some scripts we made. CodeNarc triggers violations based on rules. Click the links to the left to view all the rules, such as the basic, or concurrency rules. Or you can create your own ruleset; see how easy it is in this screencast.

Running CodeNarc

Run CodeNarc with the Ant Task, the command-line runner, or as part of your test suite. Also, plugins exist for Maven, Gradle, Grails, Griffon, Sonar and Hudson. See our Integration page for more details. Reports come in HTML, XML, or text format. Take a look at a Sample CodeNarc HTML Report, or a Sample CodeNarc XML Report.

Requirements

CodeNarc requires:
  • Groovy version 1.7
  • Java 1.5 or later
  • Log4J 1.2.13 or later on the classpath

Get it from Maven2

For projects built using Maven, CodeNarc is available from the Maven Central Repository
  • groupId = org.codenarc
  • artifactId = CodeNarc

Inspirations

We're inspired by the wonderful PMD and Checkstyle Java static analysis tools, as well as the extensive Groovy inspections performed by IntelliJ IDEA.