Ubuntu编译Apache NiFi源码遇SpotBugs报错,求解决及跳过方法
解决Apache NiFi编译时SpotBugs插件报错的问题
一、直接跳过SpotBugs插件完成编译
可以通过添加Maven参数跳过SpotBugs的检查,修改后的编译命令如下:
./mvnw clean install -T2C -DskipTests -Dspotbugs.skip=true
或者使用等价参数:
./mvnw clean install -T2C -DskipTests -Dmaven.spotbugs.skip=true
添加参数后,Maven会跳过SpotBugs插件的执行,直接完成编译流程。
二、排查SpotBugs报错根源(可选)
如果需要定位具体错误原因,可按以下步骤操作:
- 查看详细错误日志:执行编译命令时添加
-X参数打印调试日志,获取SpotBugs的具体报错细节:
日志中会显示触发报错的具体类、代码问题或插件兼容性问题。./mvnw clean install -T2C -DskipTests -X - 检查Java版本兼容性:SpotBugs 4.7.3.5对Java 21的支持存在局限性,可查看NiFi项目根pom.xml中
maven-compiler-plugin的配置,确认项目官方推荐的Java版本,若版本不匹配可切换到对应版本重试。 - 升级SpotBugs插件版本:如果是插件版本兼容问题,可在项目父pom.xml中更新SpotBugs插件到支持Java 21的版本(如4.8.6.0及以上),修改后重新执行编译。
内容的提问来源于stack exchange,提问作者Stefek Burczymucha
相关产品推荐
相关产品推荐

