首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将FindBugs配置为只在多模块maven项目中的一个项目上运行

如何将FindBugs配置为只在多模块maven项目中的一个项目上运行
EN

Stack Overflow用户
提问于 2013-06-17 22:29:29
回答 2查看 4K关注 0票数 2

我使用findbugs- maven -plugin来检查maven中的bug。我的maven项目是一个多模块项目,大致如下:

代码语言:javascript
复制
java-module
    pom.xml
    src/ ...
pom.xml
scala-module
    pom.xml
    src/ ...

我使用Jenkins来构建和测试项目,Jenkins在最顶层的目录中运行goal findbugs:findbugs。由于FindBugs针对由Scala编译器生成的代码报告了许多虚假警告,因此我想告诉FindBugs不要在scala-module中分析代码。但是,当我在最顶层的目录中运行findbugs:findbugs时,它总是分析java-modulescala-module中的所有类。我如何告诉maven忽略scala-module作为一个整体?我知道FindBugs排除过滤器,但我希望FindBugs有一个配置选项,告诉它不分析某个子模块中的代码。

pom.xml中的java-module子目录中,FindBugs配置如下:

代码语言:javascript
复制
<reporting>
  <plugins>
    <plugin>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>findbugs-maven-plugin</artifactId>
      <version>${version.plugin.codehaus.findbugs}</version>
      <configuration>
        <findbugsXmlOutput>true</findbugsXmlOutput>
        <findbugsXmlWithMessages>true</findbugsXmlWithMessages>
        <xmlOutput>true</xmlOutput>
      </configuration>
    </plugin>
  </plugins>
</reporting>

尽管配置仅针对java-module完成,但FindBugs也将始终分析scala-module

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-06-18 21:44:55

添加一个配置scala-module pom.xml,它显式地指示findbugs跳过该模块,即

代码语言:javascript
复制
<reporting>
  <plugins>
    <plugin>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>findbugs-maven-plugin</artifactId>
      <configuration>
        <skip>true</skip>
      </configuration>
    </plugin>
  </plugins>
</reporting>

请注意,对于这样的情况,Maven通常要求您重复样板XML。

票数 2
EN

Stack Overflow用户

发布于 2013-07-22 15:23:29

Noahlz的回答对我不起作用,但是将以下代码片段添加到子模块的POM.xml中可以起到作用。

代码语言:javascript
复制
<properties>
    <findbugs.skip>true</findbugs.skip>
</properties>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17150017

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档