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

Azure DevOps流水线构建Android APK时无法找到com.zendesk 5.0.2依赖问题

问题定位

相同构建变体可在Android Studio正常编译、但Azure DevOps流水线报依赖找不到,且添加Zendesk依赖前流水线可正常构建的核心原因:
本地Android Studio环境缓存了Zendesk依赖的Maven源信息,Gradle可自动从远端拉取产物;但Azure DevOps使用的ubuntu-latest是干净的构建环境,无本地缓存,同时项目构建脚本中的仓库源配置未被流水线的Gradle进程正确感知,导致解析跨模块传递的依赖时,仅扫描项目libs目录下的本地文件,找不到对应产物就直接报错。

可落地的解决步骤
  • 核对仓库源的配置位置
    报错显示依赖传递路径为:module01 > :module02 > :module03,如果Zendesk对应的Maven仓库源仅配置在单个模块的build.gradle中,跨模块传递的依赖无法感知到该源。必须将仓库源配置在项目级的仓库配置块中,保证所有模块的依赖解析都能访问到对应源。
  • 排查本地文件查找逻辑
    日志中Gradle仅检索两个libs目录下的jar文件,说明项目的settings.gradle或build.gradle中配置了flatDir仓库,将libs目录设为依赖查找路径,但未叠加远端Maven源,导致Gradle在找不到本地jar时没有切换到远端源拉取流程。
  • 确认构建模式配置
    检查项目gradle.properties中是否配置了org.gradle.offline=true,离线模式下Gradle不会访问任何远端仓库,仅靠本地缓存和本地文件查找依赖,在无本地缓存的流水线环境下必然出现依赖找不到的问题。
  • 验证依赖坐标有效性
    替换为com.zendesk:support:5.0.2后仍报错,需确认配置的仓库源是否包含该版本的正式发布产物,避免将快照仓库和正式发布仓库的配置混用。
快速验证方法

在现有Gradle@2任务的gradleOptions字段中,追加传入Zendesk远端仓库的指定参数,运行一次构建:
如果调整后可正常完成依赖解析,即可确认问题根源是项目脚本中的仓库源配置未被流水线环境加载。

注意:不建议将第三方SDK的jar文件单独放在模块libs目录下传递依赖,一旦文件缺失会直接中断构建,可维护性远低于通过Maven源拉取依赖的方式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.24 00:15:09