詹金斯失败了,但在本地机器上一切都很好

时间:2013-08-09 12:48:24

标签: jenkins findbugs checkstyle pmd

[INFO] Fork Value为true

[java]分析期间发生以下错误:

[java] 2013年8月9日下午3:16:04 edu.umd.cs.findbugs.TextUIBugReporter reportAnalysisError

[java]严重:无法获取java / lang / StringBuilder的XClass

...

在这些消息之后,Jenkins以失败结束构建。在本地机器上我也得到了这些消息,但没有任何中断,并且findbugs,pmd和checkstyle正确完成。

同样在Jenkins上我得到了

[PMD]未找到mojo检查的报告

[FINDBUGS]找不到mojo检查的报告

,但在本地机器上我没有。好像这两个奇怪的人有联系,我该怎么办呢?

我运行mvn验证。 SCA包含在构建部分的pom.xml中,如

        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>findbugs-maven-plugin</artifactId>
            <version>2.5.2</version>
            <configuration>
                <skip>false</skip>
                <failOnViolation>false</failOnViolation>
                <failOnError>false</failOnError>
                <xmlOutput>true</xmlOutput>

            </configuration>
            <executions>
                <execution>
                    <phase>verify</phase>
                    <goals>
                        <goal>findbugs</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

2 个答案:

答案 0 :(得分:3)

问题在于不同的jdks。在本地机器上我有1.7,但在Jenkins - 1.8,所以我只是更改版本。看起来这个bug的根源在于jdk 1.8。

答案 1 :(得分:1)

显然,Java 8中的类结构发生了变化。因此,FindBugs版本2.0.3(最新版本为1. Mai 2014)和早期版本在JDK 1.8(或更高版本)上编译的类失败。他们已经在FindBugs开发版本中修复了这个问题(自2014年5月4日起未发布)。最新的maven插件(findbugs-maven-plugin:2.5.3)使用FindBugs 2.0.2。

我决定使用Java 7生成maven报告,直到修复(以及使用它的新的FindBugs maven插件版本)发布。

使用Java 7(linux)生成报告:

JAVA_HOME=${HOME}/Software/jdk1.7 mvn site

相关的FindBugs错误报告:

相关问题