You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用正确密钥库密码签名Release APK时遇KeytoolException报错求助

解决密钥库签名报错:toDerInputStream rejects tag type -90

以下是针对该问题的实用解决方法,按优先级尝试:

  • 验证密钥库文件完整性
    先备份原密钥库文件,然后用keytool命令检查文件是否能正常读取:

    keytool -list -v -keystore D:\Path_TO_keystore\file.jks
    

    输入密钥库密码后,若能正常列出密钥的详细信息,说明文件本身没问题;若仍报错,大概率文件已损坏,优先尝试找回备份文件。

  • 区分密钥库密码与密钥别名密码
    很多时候是混淆了全局密钥库密码和单个密钥别名的密码,单独验证密钥别名:

    keytool -list -v -keystore D:\Path_TO_keystore\file.jks -alias key0
    

    这里需要输入的是key0这个别名对应的密码,不是密钥库的通用密码,确认两者是否一致或输入正确。

  • 转换密钥库格式
    旧版JKS格式可能和新的Android构建工具不兼容,尝试转换为PKCS12格式后再使用:

    keytool -importkeystore -srckeystore D:\Path_TO_keystore\file.jks -destkeystore new_keystore.p12 -deststoretype PKCS12
    

    生成的PKCS12文件可直接用于签名;若仍想使用JKS格式,再转换回去:

    keytool -importkeystore -srckeystore new_keystore.p12 -srcstoretype PKCS12 -destkeystore restored.jks -deststoretype JKS
    
  • 检查Gradle签名配置
    确认build.gradle中的签名配置无错误,注意路径格式和密码正确性:

    signingConfigs {
        release {
            storeFile file("D:/Path_TO_keystore/file.jks")
            storePassword "你的密钥库密码"
            keyAlias "key0"
            keyPassword "你的密钥别名密码"
        }
    }
    

    路径建议用斜杠/或双反斜杠\\避免转义问题,同时确保密码没有多余空格或特殊字符。

  • 尝试修复损坏的密钥库
    若文件确有损坏,用keytool的修复命令尝试恢复:

    keytool -importkeystore -srckeystore D:\Path_TO_keystore\file.jks -destkeystore repaired.jks -deststoretype JKS -repair
    

内容的提问来源于stack exchange,提问作者Laxmikant Mahamuni

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 06:32:37