在 Azure Pipelines 的 Ubuntu 代理上构建 Android 项目时 SDK 目录不可写

Lam*_* Le 6 ubuntu android chmod azure-devops azure-pipelines

我正在为一个 Android 项目配置我的构建管道。到目前为止,我的所有步骤都在 Hosted VS2017 代理上完美运行,包括获取代码、使用 gradlew 构建、发布工件并将其部署到 AppCenter。

但是,在托管 Ubuntu 1604 上,gradlew 步骤存在一些问题。

在 VS2017 代理上,这仅适用于: .\gradlew assembleDebug

在 Ubuntu 1604 上,这就是我现在所拥有的:

chmod 775 gradlew
chmod 775 /usr/local/lib/android/sdk --> The fix I'm working on
./gradlew assembleDebug
Run Code Online (Sandbox Code Playgroud)

在没有第二行的情况下运行构建,代理将抛出此异常:

出了什么问题:配置项目“:app”时出现问题。
无法安装以下 SDK 组件: build-tools;28.0.3 Android SDK Build-Tools 28.0.3
SDK 目录不可写 (/usr/local/lib/android/sdk)

我是 Ubuntu 的初学者......为什么它不可写?我尝试过,chmod但这样做时遇到了异常:chmod: changing permissions of '/usr/local/lib/android/sdk': Operation not permitted.

我现在应该看哪个方向来解决这个问题......?谢谢大家!

小智 9

更改 Android SDK 的所有权:

sudo chown -R $(whoami) $ANDROID_HOME
Run Code Online (Sandbox Code Playgroud)