Android Studio调试模式报Missing keystore,但.android目录存在debug.keystore
针对你遇到的问题——debug.keystore存在于默认目录,但执行signingReport任务仍提示"Missing keystore",且空白项目正常、release签名无异常,可尝试以下针对性排查:
检查模块级build.gradle的debug签名配置
确保debug签名块的路径、密钥信息完全正确,避免硬编码路径出错,推荐用系统属性动态获取跨平台路径:android { signingConfigs { debug { storeFile file(System.getProperty('user.home') + "/.android/debug.keystore") storePassword 'android' keyAlias 'androiddebugkey' keyPassword 'android' } } buildTypes { debug { signingConfig signingConfigs.debug } } }排查gradle.properties中的签名覆盖属性
检查项目根目录的gradle.properties文件,是否存在android.debug.storeFile、android.debug.storePassword等全局属性,这些会优先覆盖build.gradle中的配置,确认属性值正确,或直接删除无关的覆盖属性。检查自定义Gradle脚本/插件的干扰
查看项目根目录build.gradle中的classpath插件,或模块下的额外gradle脚本(如signing.gradle),是否有修改signingConfigs的逻辑,导致debug签名配置被意外覆盖或清空。验证文件权限(Linux/Mac环境)
在Debian或Mac上,执行chmod 644 ~/.android/debug.keystore,确保当前用户对debug.keystore有读取权限,避免因权限不足导致无法访问。通过命令行执行任务获取详细日志
在项目根目录执行对应命令:- Linux/Mac:
./gradlew signingReport - Windows:
gradlew.bat signingReport
查看控制台完整错误输出,定位具体的路径解析、权限或配置错误。
- Linux/Mac:
确认Build Variant与签名配置的关联
打开Android Studio的Build Variants面板,确认当前选中的debug变体绑定的是debug签名配置,而非其他自定义配置。
内容的提问来源于stack exchange,提问作者Roxac

