Azure DevOps Pipelines 上的 Android SDK 构建工具
Posted
技术标签:
【中文标题】Azure DevOps Pipelines 上的 Android SDK 构建工具【英文标题】:Android SDK Build Tools on Azure DevOps Pipelines 【发布时间】:2021-10-28 10:00:28 【问题描述】:我在尝试在 Azure DevOps 中创建 android CI/CD 时遇到了严重问题。我的应用程序是一个带有 Cordova 的 Android 应用程序。
当我在 Azure DevOps 中构建它时,我的管道有一条错误消息:
无法确定任务':app:compileReleaseJavaWithJavac'的依赖关系。
安装的构建工具版本 31.0.0 已损坏。使用 SDK 管理器删除并重新安装。
我该如何解决这个问题?
【问题讨论】:
好像你也有这个问题。请先检查一下。发生这种情况是因为 Android Build Tools 31.0.0 Azure DevOps ionic Android Build Error "Build-tool 31.0.0 is missing DX at /usr/local/lib/android/sdk/build-tools/31.0.0/dx" 中缺少文件 【参考方案1】:安装的构建工具版本 31.0.0 已损坏。使用 SDK 管理器删除并重新安装。
这似乎是 Android 构建工具版本 31.0.0 中的已知问题。
对于变通方法,您可以使用较低版本的构建工具。
在 Azure DevOps Pipeline 中,您可以使用以下脚本卸载 Build Tool 版本:
steps:
- script: '$ANDROID_HOME/tools/bin/sdkmanager --uninstall ''build-tools;31.0.0'''
displayName: 'Command Line Script'
或者您可以在项目中将 buildToolsVersion 定义为 30.0.3。
更详细的信息可以参考这张票:Android Studio error “Installed Build Tools revision 31.0.0 is corrupted”
【讨论】:
【参考方案2】:当您尝试使用cordova android 10.0.0 或以下版本时,会出现版本31.0.0 的sdk 错误
请运行以下命令:-
cordova 平台 rm android 科尔多瓦平台添加android@10.1.0 科尔多瓦构建安卓
您也可以查看使用 cordova 10.1.0 的发行说明(无白名单)
【讨论】:
以上是关于Azure DevOps Pipelines 上的 Android SDK 构建工具的主要内容,如果未能解决你的问题,请参考以下文章
Azure Pipelines 托管代理无法访问 DevOps 项目源
Azure DevOps Pipelines 中的条件阶段执行
如何在 Azure DevOps Pipelines 上指定 Android SDK 构建工具版本
Azure DevOps -> Pipelines -> Library -> 访问 Azure Key Vault -> Key Vault 不允许从所有网络访问
Azure DevOps Pipelines - 仅在上一次运行成功时运行 YAML 管道
在 Azure DevOps Git 存储库中使用来自 Azure Pipelines 的 Python 包版本标记 Git 存储库