Jenkins构建maven项目集成Findbugs问题之OutOfMemory

最近在原有Jenkins项目构建上面集成了静态代码检查工具Findbugs,无奈一直构建不通过,无论怎么执行都是报OutOfMemory的错

     [java] Exception in thread "main" java.lang.OutOfMemoryError: GC overhead limit exceeded

网上百度了很多,说白了就是内存溢出,问题是我代码肯定没问题,构建项目也没问题,服务器内存多的很,问题应该就出在Findbugs,然后修改maven执行内存为4G,还是不行



Findbugs官网找了一圈只有ant和命令行工具的说明,没有maven插件的,偶然的机会看到了findbugs-maven-plugin插件的官网,进去一看豁然开朗,哈哈哈,原来插件是单独的jvm执行的,跟maven的没什么关系,可以通过命令行的方式给插件传参数的:

maxHeap int - (no description)
Default value is512.
User property isfindbugs.maxHeap.

findbugs-maven-plugin插件执行的最大堆内存是由这个参数决定的,默认值是512,因为我的项目比较大,一般构建需要2G所以果断修改了一下,果然好用~

还有很多其他的参数,感兴趣的可以自己去研究,下面是我修改后的配置,最大内存调整为4096,注意这里传的是int型,不用加m

clean package -f pom.xml -e -B -Dmaven.test.skip=true -Dforceclass=true  -Dfindbugs.maxHeap=4096 findbugs:findbugs

官网地址: https://gleclaire.github.io/findbugs-maven-plugin/findbugs-mojo.html


你可能感兴趣的:(代码质量检查)