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

PhoneGap构建停滞求助:执行cordova run android时卡在依赖下载环节

解决Cordova构建Android时卡在nekohtml依赖下载的问题

嘿,刚接触PhoneGap/Cordova和原生开发就碰到这种卡下载的情况确实挺闹心的,我来给你一步步梳理解决方案:

第一步:处理当前卡住的进程

完全可以终止当前的cordova/npm进程,这不会对已下载的文件造成任何损坏——后续重启构建时,Gradle会自动识别已经下载好的依赖,接着完成剩下的部分,不用怕之前的努力白费。

第二步:解决依赖下载慢的核心问题

卡住的本质是jcenter仓库在国内访问不稳定,换用国内的Gradle镜像源是最有效的解决办法,分两种场景:

方法1:修改当前项目的Gradle配置(仅对当前项目生效)

  • 打开你的Cordova项目,找到platforms/android目录下的根级build.gradle文件(注意不是app子文件夹里的那个)
  • 找到文件中的repositories代码块,将国内镜像(比如阿里云)放在最前面,替换或后置jcenter:
repositories {
    maven { url 'https://maven.aliyun.com/repository/public' }
    mavenCentral()
    // 可注释或后置原jcenter,优先走国内源
    // jcenter()
}
  • 同时检查platforms/android/app/build.gradle文件中的repositories块,做同样的修改

方法2:配置全局Gradle镜像(所有项目通用)

这个方法一劳永逸,以后其他Cordova/Android项目都不用重复改配置:

  • 找到你的用户目录下的.gradle文件夹:
    • Windows:C:\Users\你的用户名\.gradle
    • Mac/Linux:~/.gradle
  • 在该文件夹下新建init.gradle文件,写入以下内容:
allprojects {
    repositories {
        maven { url 'https://maven.aliyun.com/repository/public' }
        mavenCentral()
        jcenter() // 若仍需依赖jcenter可保留,但放最后优先级最低
    }
}

第三步:手动下载依赖(备用方案)

如果换镜像后还是卡住,可以手动下载缺失的jar包放到Gradle缓存里:

  • 手动下载nekohtml-1.9.6.2.jar
  • 找到Gradle缓存路径:~/.gradle/caches/modules-2/files-2.1/nekohtml/nekohtml/1.9.6.2/(后面会有一个哈希值命名的文件夹)
  • 将下载好的jar包放入该文件夹,替换已存在的不完整文件

第四步:重启构建

终止原有进程后,重新运行cordova run android,应该就能顺利完成构建了。

如果还是遇到问题,可以尝试清理Gradle缓存(删除.gradle/caches文件夹)后再重新构建,一般都能解决这类依赖下载的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 08:43:51