安卓signing config release未设置Keystore文件,多次调研仍无解决方案
安卓release打包报错
Keystore file not set for signing config release修复方案 报错截图:
核心原因
该报错说明项目安卓打包配置中的release签名配置,没有关联到有效的keystore签名文件,或配置参数、路径存在错误。
分步修复方案
第一步:确认keystore文件存放位置
建议将你的.jks/.keystore签名文件放在项目android/app/目录下,优先用相对路径引用,避免绝对路径在不同设备/环境下失效。第二步:配置签名信息属性文件
在项目android/目录下新建key.properties文件,填写正确的签名信息,内容格式如下:storePassword=你的keystore存储密码 keyPassword=你的密钥密码 keyAlias=你的密钥别名 storeFile=你的签名文件名称.jks注意:该文件包含敏感信息,务必添加到
.gitignore中,不要提交到公共代码仓库。第三步:校验
android/app/build.gradle配置
首先确认文件开头已经加载了key.properties配置:def keystoreProperties = new Properties() def keystorePropertiesFile = rootProject.file('key.properties') if (keystorePropertiesFile.exists()) { keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) }再确认
android代码块下的签名配置正确:signingConfigs { release { keyAlias keystoreProperties['keyAlias'] keyPassword keystoreProperties['keyPassword'] storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null storePassword keystoreProperties['storePassword'] } }最后确认buildTypes的release节点绑定了release签名配置:
buildTypes { release { signingConfig signingConfigs.release // 原有其他release配置(如混淆、压缩开关等)无需修改 } }第四步:常见异常排查
- 确认签名文件名、
key.properties中的参数没有拼写错误、多余空格,大小写和实际文件保持一致 - 如果使用绝对路径配置storeFile,确认当前打包环境下该路径真实存在
- 本地打包确认
key.properties文件没有被过滤,本地目录下真实存在 - CI/CD环境打包确认已经正确注入了签名文件和对应参数,不存在本地有配置、云端无配置的问题
- 确认签名文件名、
第五步:清理缓存重试
在项目android目录下执行命令清理构建缓存后重新打包:- Mac/Linux系统执行:
./gradlew clean - Windows系统执行:
gradlew clean
- Mac/Linux系统执行:
内容的提问来源于stack exchange,提问作者RB RESTAURANT KORATLA
相关产品推荐
相关产品推荐

