avdmanager 在 "Loading local repository..." Linux 上挂起

avdmanager hangs on "Loading local repository..." Linux

转载:

  1. Headless Ubuntu 18.04 LTS VM(启用 kvm 注释)
  2. sudo apt-get update
  3. sudo apt-get install -y wget openjdk-8-jre-headless libc6-i386 lib32stdc++6 python3-pip nginx unzip
  4. sudo wget https://dl.google.com/android/repository/commandlinetools-linux-6200805_latest.zip
  5. sudo unzip commandlinetools-linux-6200805_latest.zip -d /opt
  6. sudo /opt/tools/bin/sdkmanager --install --sdk_root=/opt "system-images;android-19;default;armeabi-v7a" "platform-tools" "platforms;android-19"
  7. /opt/tools/bin/avdmanager create avd -n arm -k "system-images;android-19;default;armeabi-v7a" -f

在第 7 步挂起 Loading local repository...

备注:

问题是什么?我该如何调查?我错过了什么吗?

我遇到了同样的问题。我相信 avdmanagersdkmanager 可能有问题,因为它总是标识错误的 sdk_root 路径。例如,如果我在服务器的根目录下创建一个文件夹(例如 /root/SDK)作为 sdk 根目录,avdmanager 不会搜索 emulator、[=15= 这样的文件夹],等等,在root/SDK下。事实证明它总是在上层文件夹中搜索(即 /root)。如果/root里面的东西很多,查找的过程会很费时间,所以一直挂在"loading local repository"。如果你等待足够的时间,你最终会看到结果。所以为了解决这个问题,我的解决方案是将 sdk root 放在一个更深的文件夹级别(例如,/root/SDK/android_sdk_linux)。 avdmanager 仍然开始在上层文件夹(即 /root/SDK)中搜索,但是速度非常快,因为 /root/SDK 中没有任何内容。 avdmanager 可能会输出一些警告,但您可以忽略它们,因为根据我的经验,没有副作用。

发生这种情况是因为从版本 (6200805) 开始,命令行工具应该放在 cmdline-tools 目录中。它应该在 ANDROID_HOME 中手动创建。

请看这个。 使用上述配置,一切正常。