当前位置: 首页 > news >正文

Android Resolving Android Dependencies报错解决

Unity打包Android Resolving Android Dependencies卡死/失败解决方案

前言

很多Unity开发者在导出APK/AAB安卓安装包时,会卡在Resolving Android Dependencies解析依赖这一步,界面长时间加载、无响应甚至直接报错打包中断。

一、Android打包卡住原因

Resolving Android Dependencies解析安卓依赖库,是 Unity 安卓打包前由 EDM4U 工具自动执行的流程,它会扫描项目各类 SDK 依赖配置、联网从 Maven 仓库下载 aar/jar 库并自动处理版本冲突以生成构建文件,一旦流程中断就无法打包;该工具默认会访问maven.google.com等海外远程仓库下载依赖,在国内网络、公司防火墙等环境下常常出现访问超时、下载挂起的情况,这也是打包卡在这一步最主要的原因。

二、方案一(学习了这个博主的解决方法:https://blog.csdn.net/chenggong2dm/article/details/134603866)


是因为缺失gradlew.bat导致,因此我们要在对应目录下创建这个bat文件,之后再重新解析打包

1.将下面的内容复制到gradlew.bat

@if"%DEBUG%"==""@echooff @rem##########################################################################@rem @rem Gradle startup scriptforWindows @rem @rem##########################################################################@remSetlocal scopeforthe variables with windows NT shellif"%OS%"=="Windows_NT"setlocalsetDIRNAME=%~dp0if"%DIRNAME%"==""setDIRNAME=.setAPP_BASE_NAME=%~n0setAPP_HOME=%DIRNAME% @rem Add default JVM options here.You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.setDEFAULT_JVM_OPTS= @rem Find java.exeifdefined JAVA_HOME goto findJavaFromJavaHomesetJAVA_EXE=java.exe%JAVA_EXE%-version >NUL 2>&1if"%ERRORLEVEL%"=="0"goto initecho.echoERROR: JAVA_HOME is notsetand no'java'command could be found in your PATH.echo.echoPleasesetthe JAVA_HOME variable in your environment to match theecholocation of your Java installation.goto fail :findJavaFromJavaHomesetJAVA_HOME=%JAVA_HOME:"=% set JAVA_EXE=%JAVA_HOME%/bin/java.exe if exist "%JAVA_EXE%" goto init echo. echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% echo. echo Please set the JAVA_HOME variable in your environment to match the echo location of your Java installation. goto fail :init @rem Get command-line arguments, handling Windows variants if not "%OS%" == "Windows_NT" goto win9xME_args if "%@eval[2+2]" == "4" goto 4NT_args :win9xME_args @rem Slurp the command line arguments. set CMD_LINE_ARGS= set _SKIP=2 :win9xME_args_slurp if "x%~1" == "x" goto execute set CMD_LINE_ARGS=%* goto execute :4NT_args @rem Get arguments from the 4NT Shell from JP Software set CMD_LINE_ARGS=%$ :execute @rem Setup the command line set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar @rem Execute Gradle "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% :end @rem End local scope for the variables with windows NT shell if "%ERRORLEVEL%"=="0" goto mainEnd :fail rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of rem the _cmd.exe /c_ return code! if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 exit /b 1 :mainEnd if "%OS%"=="Windows_NT" endlocal :omega
  1. 重新导入

    再弹窗中再点击【reload】等待加载完成即可

三、方案二

3.1判断是否需要这些依赖

如果你的项目不包含广告功能(Unity Ads、IronSource、AdMob 等),这些依赖完全可以安全删除,删除后不影响正常功能。

3.2操作步骤

第 1 步:删除广告依赖的 XML 声明文件

这些 XML 文件告知 EDM4U 需要下载哪些依赖。删除它们后 EDM4U 就不再尝试解析广告相关的依赖:
例如本项目实际删除的文件:Assets/LevelPlay/Editor/IronSourceSDKDependencies.xml
如果项目中还有其他广告依赖文件,一并删除,
常见位置包括:

第 2 步:清空 Android Resolver 的已解析依赖记录

ProjectSettings/AndroidResolverDependencies.xml是 EDM4U 自动生成的文件,记录了之前已下载解析的所有依赖。删除 其中<packages><files>节点内的广告相关条目,或者直接删除整个文件让 EDM4U 重新生成。
本项目实际清理的内容:中删除了play-services-ads-identifierplay-services-basementmediation-sdk这几条广告相关包<files>中删除了对应的.aar.jar文件引用

第 3 步:删除已下载的广告 AAR/JAR 文件

EDM4U 之前下载的广告原生库文件需要从Assets/Plugins/Android/中清除:所有androidx.*.aar` 文件(这些是广告 SDK 的传递依赖,没有广告 SDK 就用不到)。

第 4 步:删除 EDM4U 本身(可选但推荐)

如果项目完全不需要外部依赖管理,可以删除 EDM4U 插件目录。Unity 会在下次打开项目时不再尝试解析依赖。常见目录名:Assets/ExternalDependencyManager/Assets/PlayServicesResolver/删除后重启 Unity,确认不再出现 “Resolving Android Dependencies” 提示。

注意事项

如果操作后打包提示缺少某个库,说明项目中某段代码实际引用了广告相关的 API。此时应检查代码,移除对应的using。建议在操作前备份项目或提交 Git,以便出错时回退。

本专栏记录Unity新手小白的学习成长之路,愿和大家一同钻研、共同进步。文章若有疏漏或错误,欢迎各位大佬在评论区指正,我会及时勘误优化。觉得内容对你有帮助,不妨点个关注,后续持续更新Unity实用干货!

http://www.jsqmd.com/news/1065316/

相关文章:

  • 2026年正规的钢管抛丸机/悬链式抛丸机/山东网带式抛丸机优质公司推荐 - 行业平台推荐
  • Kinetis K20选型实战:从数据手册到电机控制与物联网应用
  • 80TB承载,1200个水文站秒级入库!电科金仓赋能智慧水利
  • 2026年正规的辣椒干洗机/青岛辣椒种子干洗机/单转子辣椒粉碎机/青岛单转子辣椒粉碎机实力工厂推荐 - 行业平台推荐
  • 手搓Claude Code式AI Agent:可审计、可隔离、可进化的智能工作流
  • XGBoost与贝叶斯优化在动态空域管理中的预测与决策应用
  • Mac mini 为何成 OpenClaw 具身智能部署最优解
  • 汽车电子与工业控制中的可编程栅极驱动IC:PT2000/PT1选型与设计指南
  • 你的TI芯片又缺货涨价?一家伺服厂商的国产替代实战
  • 2025终极指南:GKD第三方订阅一站式管理,3分钟打造专属自动化规则库
  • OpenClaw本地Agent协作系统:原理、部署与技能开发实战
  • 2026年比较好的山东网带式抛丸机/履带式抛丸机/山东抛丸机源头工厂推荐 - 品牌宣传支持者
  • 如何高效处理PDF元数据:5个实战技巧与最佳实践指南
  • OpenClaw深度配置:三层流量调度实现Claude Code成本优化
  • GEO优化可以代理合作吗
  • 决策树与概念瓶颈模型融合:构建可解释持续学习新范式
  • 缓存详细设计
  • (2026最新)岳阳防水补漏正规公司甄选推荐:漏水检测维修-暗管漏水精准定位检测漏水点-卫生间/厨房/屋顶/阳台/渗漏水维修-本地人必选的正规测漏公司 - 即刻修防水
  • 零代码连接任意PLC到MQTT:工业现场的协议抽象与配置即数据实践
  • (2026最新)巴中防水补漏正规公司甄选推荐:漏水检测维修-暗管漏水精准定位检测漏水点-卫生间/厨房/屋顶/阳台/渗漏水维修-本地人必选的正规测漏公司 - 即刻修防水
  • 【标题】2026年贵阳刑事辩护律师怎么选?青年新锐实战派不踩雷推荐 - 本地品牌推荐
  • C语言指针与硬件寄存器映射:嵌入式底层开发核心原理
  • 详解 XSS 攻击原理
  • 筑牢数字防线,守护金融安全——解密网络钓鱼如何成为非法金融的“制式武器”
  • 京东新店铺怎么快速起流量?零成本冷启动实操全攻略
  • 618为何不再疯狂打价格战?答案全在这份报告——2026年“618”大促全周期观察
  • Mac M2本地部署Codex:Gemma+Qwen离线代码助手实战
  • MySQL 联合索引命中规则详解
  • 基于GIRB框架的文本摘要评估指标校准方法与实践
  • 如何用ComfyUI中文工作流合集快速掌握AI绘图:50项专业级工作流完全指南