我在配置 SonarQube 以使用 FindBugs 插件时遇到严重的主要困难。我知道这1)要求在sonar-project.properties文件中显式定义二进制文件(.class文件)的位置。我的问题是我有大量的源代码来扫描整个项目中的二进制文件。还有.jars和.war文件。此外,整个项目位于.ear文件中。
当存在单个源文件(.java)和单个二进制文件(.class文件)时,我已成功使用 FindBugs 插件与 SonarQube 。当有多个二进制文件和多个类文件都通过大型项目的各个目录隐藏时,我的问题就出现了。
我的主要问题: 任何人都可以告诉我如何正确配置属性文件以指定在哪里找到二进制文件? findbugs 需要每个二进制文件的位置还是只需要几个二进制文件?我可以将所有二进制文件分组到一个位置,还是需要特定的目录结构?我应该指定二进制文件的完整相对路径还是需要不同的东西?
感谢您阅读本文。此外,使用 Maven 而不是 Sonar-Runner 来更轻松地使用 FindBugs 来分析问题的源代码吗?
答案 0 :(得分:0)
我认为你也应该指定sonar.libraries
属性。
"使用第三方库的文件的逗号分隔路径。在检测问题时,规则引擎使用此属性(主要是SonarQube和FindBugs引擎,它们都依赖于字节码)。"
详细信息:http://docs.sonarqube.org/display/SONAR/Analysis+Parameters。
或者使用基于maven的分析来自动收集依赖项。但我不确定findbugs能否正确处理这个问题。