在Play Framework 2中使用FindBugs

时间:2012-12-18 10:21:34

标签: playframework-2.0 sbt findbugs

我想将FindBugs集成到Play Framework 2 Java项目的构建过程中。

这可能吗?如果是,那么使其工作所需的配置步骤是什么?

我假设可以使用findbugs4sbt,但我不确定如何设置它。

1 个答案:

答案 0 :(得分:4)

我昨天刚刚做了这件事并将其记录在Integrating Findbugs Into a Play Framework 2 Project (Java)

这是相关的步骤:

  1. 下载findbugs4sbt jar for sbt 0.11 from bitbucket的自定义版本并将其放入project/lib

    更新:通过

    project/plugins.sbt添加插件
    addSbtPlugin("de.johoop" % "findbugs4sbt" % "1.1.7")
    
  2. project/Build.scala中配置findbugs4sbt:

    import de.johoop.findbugs4sbt.FindBugs._
    
    object ApplicationBuild extends Build {
    
      ...
    
      val main = PlayProject(appName, appVersion, appDependencies, mainLang = JAVA,
        settings = Defaults.defaultSettings ++ findbugsSettings)
    
    }
    
  3. 然后您就可以运行生成sbt findbugs的{​​{1}}。

    由于findbugs还会分析从路由和视图中播放的一些类(并报告有关命名约定的一些问题),您可能想要忽略它们(因为无论如何都无法改进它们)。为此,使用以下findbugs4sbt设置(在target/scala-2.9.1/findbugs/findbugs.xml中)将它们从findbugs中排除:

    project/Build.scala