avdmanager 在 "Loading local repository..." Linux 上挂起
avdmanager hangs on "Loading local repository..." Linux
转载:
- Headless Ubuntu
18.04 LTS
VM(启用 kvm 注释)
sudo apt-get update
sudo apt-get install -y wget openjdk-8-jre-headless libc6-i386 lib32stdc++6 python3-pip nginx unzip
sudo wget https://dl.google.com/android/repository/commandlinetools-linux-6200805_latest.zip
sudo unzip commandlinetools-linux-6200805_latest.zip -d /opt
sudo /opt/tools/bin/sdkmanager --install --sdk_root=/opt "system-images;android-19;default;armeabi-v7a" "platform-tools" "platforms;android-19"
/opt/tools/bin/avdmanager create avd -n arm -k "system-images;android-19;default;armeabi-v7a" -f
在第 7 步挂起 Loading local repository...
备注:
- 运行 作为
sudo
的 avdmanager 没有帮助,图像无论如何都需要由用户创建。
- 试过
sudo setfacl -m u:username:rwx /opt/tools/bin/avdmanager
没用
- 设置
ANDROID_HOME=/opt
和 PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
没有帮助
- 较新版本的命令行工具对以太坊没有帮助(第 4 步)。
问题是什么?我该如何调查?我错过了什么吗?
我遇到了同样的问题。我相信 avdmanager
或 sdkmanager
可能有问题,因为它总是标识错误的 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 中手动创建。
请看这个。
使用上述配置,一切正常。
转载:
- Headless Ubuntu
18.04 LTS
VM(启用 kvm 注释) sudo apt-get update
sudo apt-get install -y wget openjdk-8-jre-headless libc6-i386 lib32stdc++6 python3-pip nginx unzip
sudo wget https://dl.google.com/android/repository/commandlinetools-linux-6200805_latest.zip
sudo unzip commandlinetools-linux-6200805_latest.zip -d /opt
sudo /opt/tools/bin/sdkmanager --install --sdk_root=/opt "system-images;android-19;default;armeabi-v7a" "platform-tools" "platforms;android-19"
/opt/tools/bin/avdmanager create avd -n arm -k "system-images;android-19;default;armeabi-v7a" -f
在第 7 步挂起 Loading local repository...
备注:
- 运行 作为
sudo
的 avdmanager 没有帮助,图像无论如何都需要由用户创建。 - 试过
sudo setfacl -m u:username:rwx /opt/tools/bin/avdmanager
没用 - 设置
ANDROID_HOME=/opt
和PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
没有帮助 - 较新版本的命令行工具对以太坊没有帮助(第 4 步)。
问题是什么?我该如何调查?我错过了什么吗?
我遇到了同样的问题。我相信 avdmanager
或 sdkmanager
可能有问题,因为它总是标识错误的 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 中手动创建。
请看这个