无法执行Findbugs引起:此项目包含未编译的Java源文件

时间:2016-08-23 13:42:42

标签: sonarqube findbugs

我目前正在使用带有扫描仪2.6.1的sonarqube服务器5.6,并且在分析java项目时我一直遇到错误。 它似乎抱怨一些未在二进制文件夹中编译的java文件(二进制文件夹中根本没有任何内容)。 一旦我添加-X参数,我就会得到更多异常(标记为忽略),见下文。 任何线索?

sonar-project.properties后跟日志

sonar.projectKey=myproj
sonar.projectName=myproj
sonar.projectVersion=1.1
sonar.branch=1.1
sonar.sources=./java
sonar.binaries=./deploy
sonar.log.level=DEBUG
sonar.verbose=false
sonar.sourceEncoding=UTF-8


INFO: Execute Checkstyle 6.12.1 done: 2365 ms
INFO: Sensor CheckstyleSensor (done) | time=2377ms
INFO: Sensor SCM Sensor (wrapped)
INFO: SCM provider for this project is: svn
INFO: 9 files to be analyzed
DEBUG: Working directory: D:\Apps\xxxx
DEBUG: Annotate file java/src/xxxx.java
DEBUG: Annotate file java/src/xxxx.java
DEBUG: Annotate file java/src/xxxx.java
DEBUG: Annotate file java/src/xxxx.java
DEBUG: Annotate file java/src/xxxx.java
DEBUG: Annotate file java/src/xxxx.java
DEBUG: Annotate file java/src/xxxx.java
DEBUG: Annotate file java/src/xxxx.java
DEBUG: Annotate file java/src/xxxx.java
INFO: 9/9 files analyzed
INFO: Sensor SCM Sensor (wrapped) (done) | time=3289ms
INFO: Sensor FindBugs Sensor (wrapped)
WARN: Findbugs needs sources to be compiled. Please build project before 

executing sonar or check the location of compiled classes to make it possible for Findbugs to analyse your project.
    INFO: ------------------------------------------------------------------------
    INFO: EXECUTION FAILURE

没有-e param的执行

警告:Findbugs需要编译源代码。请在执行声纳之前构建项目或检查已编译类的位置,以便Findbto分析您的项目。 然后 java.lang.IllegalStateException:无法执行Findbugs

引起:java.lang.IllegalStateException:此项目包含未编译的Java源文件。         at org.sonar.plugins.findbugs.FindbugsConfiguration.getFindbugsProject(FindbugsConfiguration.java:120)         at org.sonar.plugins.findbugs.FindbugsExecutor.execute(FindbugsExecutor。

使用-X参数

com.puppycrawl.tools.checkstyle.api.CheckstyleException:缺少键' severity'在SuppressionCommentFilter中

然后有多个例外 调查:继续寻找,忽略例外 com.puppycrawl.tools.checkstyle.api.CheckstyleException:无法找到com.puppycrawl.tools.checkstyle.checks.sizes.WhitespaceAroundCheck的类

然后 警告:Findbugs需要编译源代码。请在执行声纳之前构建项目,或者检查已编译类的位置以使其成为可能 然后 信息:执行失败

3 个答案:

答案 0 :(得分:23)

定义后,它对我有用:

sonar.java.binaries=[YOUR_BUILD_DIR] (target/classes)

见于:

https://github.com/SonarQubeCommunity/sonar-findbugs/issues/49

答案 1 :(得分:3)

我们对某些项目(主要是Play Framework项目)有同样的问题。我将SonarQube中的FindBugs插件从版本3.4.3恢复到3.3(我在SonarQube 5.5上使用),然后再次进行分析。

答案 2 :(得分:2)

使用Maven-Multi-Module项目的SonarQube 6.2的工作配置

- Module1

- Module2

sonar.projectKey=projectKey
sonar.projectName=Project Name
sonar.projectVersion=1.0

sonar.modules=Module1,Module2

sonar.sources=src
sonar.sourceEncoding=UTF-8
sonar.language=java