在Maven中使用CodeNarc



我正在尝试将CodeNarc与基于maven的Groovy项目集成。站点上关于CodeNarc Maven插件的文档很少。我试图理解的用法方面是:

  • 如何指向自定义规则集以及在项目中放置它们的位置?
  • 如果违反了任何规则,如何使Jenkins构建失败

目前我能够使用命令

运行CodeNarc

mvn codenarc: codenarc

当我将'reporting'部分添加到POM文件(如http://www.mojohaus.org/codenarc-maven-plugin/usage.html所述)并运行

mvn网站

不生成CodeNarc报告。我得到这个警告

[警告]没有为项目定义URL -装饰链接不会

解决

但不清楚它与CodeNarc的关系。

在Maven中使用CodeNarc的正确方法是什么?

我刚刚做了,以防你还需要提示。你可以通过在"build"->"plugins"->"plugin"下创建一个"plugin"条目来挂钩插件的执行。

<build>
  <plugins>
    <plugin>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>codenarc-maven-plugin</artifactId>
      <version>0.18-1</version>
      <configuration>
        <sourceDirectory>${project.basedir}/src/main/groovy</sourceDirectory>
        <maxPriority1Violations>0</maxPriority1Violations>
        <maxPriority2Violations>0</maxPriority2Violations>
        <maxPriority3Violations>0</maxPriority3Violations>
      </configuration>
      <executions>
        <execution>
          <phase>prepare-package</phase>
          <goals>
            <goal>codenarc</goal>
          </goals>
        </execution>
      </executions>
    </plugin>
    ...
  </plugins>
</build>

注意"maxPriority_Violations"的值。这就是在违反的情况下构建失败的原因。

我不使用任何自定义规则,但似乎你可以通过设置"rulesetfiles"配置选项来定义自己的规则。查看这里的配置选项:http://www.mojohaus.org/codenarc-maven-plugin/codenarc-mojo.html

此配置的项目示例:https://github.com/tveronezi/faceid/tree/master/faceid-web

相关内容

  • 没有找到相关文章

最新更新