Android打包报错:':app:signReleaseBundle'任务执行失败,触发空指针异常
:app:signReleaseBundle执行失败的空指针问题 我太懂这种试过各种常规办法还卡壳的憋屈感了,这个在FinalizeBundleTask$BundleToolRunnable阶段抛出的java.lang.NullPointerException确实有点顽固,给你几个更针对性的排查思路试试:
把签名配置仔仔细细查一遍:
去Module级别的build.gradle里核对签名配置,确保storeFile、storePassword、keyAlias、keyPassword一个都没漏,文件路径和密码也别拼错。给你贴个标准配置参考:signingConfigs { release { storeFile file("my-release-key.jks") storePassword "my-store-password" keyAlias "my-key-alias" keyPassword "my-key-password" } } buildTypes { release { signingConfig signingConfigs.release // 其他打包相关配置 } }彻底清缓存后重新构建:
旧缓存经常会搞出莫名其妙的问题,执行这两条命令把缓存清干净再试:./gradlew clean ./gradlew bundleRelease --no-build-cache检查AGP和Bundle Tool的版本兼容性:
Android Gradle插件(AGP)和Bundle Tool版本不匹配也容易触发空指针。要么把AGP升级到最新稳定版,要么在gradle.properties里指定一个兼容的Bundle Tool版本:android.bundleToolVersion=1.15.0验证你的Keystore文件是否正常:
用keytool命令检查下keystore有没有损坏:keytool -list -v -keystore your-keystore.jks如果这条命令跑不通或者提示文件异常,那大概率是keystore的问题,得重新生成或者修复它。
排查第三方插件的干扰:
要是项目里装了和打包、签名相关的第三方Gradle插件,先暂时禁用它们再尝试打包。如果能成功了,就挨个排查是哪个插件在捣乱。
问题原描述:
执行:app:signReleaseBundle失败。
在执行com.android.build.gradle.internal.tasks.FinalizeBundleTask$BundleToolRunnable时发生错误,抛出java.lang.NullPointerException(无错误信息)

内容的提问来源于stack exchange,提问作者Oğuzhan Köken

