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

Flutter应用构建失败:PKIX路径构建错误求助

Flutter构建报错PKIX path building failed:证书路径问题解决方案

问题背景

构建命令:flutter build apk --split-per-abi prod -t lib/main.dart --no-sound-null-safety
报错信息:

PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

已尝试操作:清理Android Studio缓存、删除Flutter缓存、执行flutter clean && flutter pub get、切换至Flutter稳定通道,问题未解决。浏览器可正常下载依赖资源,但构建过程无法获取。

解决方案

  • 手动导入证书到Java keystore

    1. 打开浏览器访问依赖所在的仓库地址,导出网站的SSL证书(保存为.crt格式)
    2. 定位Flutter使用的JDK路径,通常在flutter/bin/cache/artifacts/engine/android-arm64-release/openjdk,或者Android Studio自带的JDK目录
    3. 执行证书导入命令:
      keytool -importcert -file /你的证书路径/xxx.crt -keystore /JDK路径/lib/security/cacerts -alias "repo-cert"
      
    4. 输入keystore默认密码changeit,确认导入即可
  • 临时关闭Gradle SSL验证(应急用)
    在项目android/build.gradle中添加配置:

    allprojects {
        repositories {
            // 保留原有仓库配置
        }
        configurations.all {
            attributes.attribute(VerificationTypeAttributes.VERIFICATION_TYPE, VerificationTypeAttributes.NONE)
        }
    }
    

    同时在gradle.properties中添加:

    systemProp.javax.net.ssl.trustStore=/JDK路径/lib/security/cacerts
    systemProp.javax.net.ssl.trustStorePassword=changeit
    

    注意:此方案仅作临时应急,长期使用会有安全风险

  • 检查系统代理与Gradle代理配置
    关闭系统全局代理,或者确保Gradle使用的代理配置包含正确的证书。同时检查~/.gradle/gradle.properties文件,删除残留的无效代理配置项

  • 更新Gradle与Android插件版本
    打开android/build.gradle,将com.android.tools.build:gradle更新至最新稳定版,同步更新gradle/wrapper/gradle-wrapper.properties中的Gradle版本,确保两者版本兼容

内容的提问来源于stack exchange,提问作者Ruelos Joel

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 20:25:30