avdmanager:命令失败,退出代码为 1 cordova
Posted
技术标签:
【中文标题】avdmanager:命令失败,退出代码为 1 cordova【英文标题】:avdmanager: Command failed with exit code 1 cordova 【发布时间】:2017-12-18 10:20:20 【问题描述】:我刚开始从cordova官方教程制作我的第一个原生cordova应用程序,当我运行时
ayam@laptop:~/Documents/learn/hello$ cordova requirements
android 的需求检查结果:
Java JDK: installed 1.8.0
Android SDK: installed true
Android target: not installed
*** avdmanager: Command failed with exit code 1
Gradle: installed /usr/local/gradle-3.5/bin/gradle
Error: Some of requirements check failed
我收到了avdmanager: Command failed with exit code 1
【问题讨论】:
@Neitzen ID Android home 设置不正确 @Gandhi `ayam@laptop:~/Documents/learn/hello$ echo $ANDROID_HOME /home/ayam/Android/Sdk ayam@laptop:~/Documents/learn/hello$ cd /home/ ayam/Android/Sdk ayam@laptop:~/Android/Sdk$ ls build-tools extras ndk-bundle platform sources emulator licenses patcher platform-tools tools ` 您是否先使用 AVD 管理器创建了 AVD? 【参考方案1】:这个问题可能有3个来源:
-
Android 工具路径设置
JAVA 安装
JAVA_HOME 路径设置
我已经在下面解释了如何在 macOS 上解决所有这些问题(Windows 可能略有不同)
1。 Android 工具可能未使用正确的路径添加:
我通过在 macOS 终端中执行此操作解决了它:
PATH=$PATH:$HOME/Library/Android/Sdk/emulator
PATH=$PATH:$HOME/Library/Android/Sdk/tools
PATH=$PATH:$HOME/Library/Android/Sdk/tools/bin
PATH=$PATH:$HOME/Library/Android/Sdk/platform-tools
export ANDROID_HOME=$HOME/Library/Android/
这些都是 Cordova 所需的路径变量。
重要:
确保在Library
内的用户文件夹内有一个名为/Android/
的文件夹!
它以前直接安装到用户文件夹而不是Library
,因此造成混乱。
2。 JAVA 可能缺失或版本错误:
您需要使用 JAVA SE v 1.8 才能使 Cordova 工作。在终端中执行此操作:
/usr/libexec/java_home -V
并检查该版本是否可用。如果没有,您可以研究如何使用自制软件将其安装在其中。然后再次尝试上述命令以仔细检查它是否已正确安装。
3。 JAVA_HOME 路径可能设置不正确
在终端中执行此操作:
echo $JAVA_HOME
如果您没有看到任何内容,则表示您的 $JAVA_HOME
变量未正确导出。您可以通过在终端中执行此操作来解决此问题:
export JAVA_HOME=`/usr/libexec/java_home -v 1.8`
就是这样!
【讨论】:
@Samuel Liew♦ 你是对的。我已经从最不相关的帖子中删除了我的答案,并且只想保留这个问题的答案。因为它是最相关的。但是,我无法取消删除我的其他答案,所以不得不再次发布。感谢您的理解。最好的问候。 我正在运行 JDK 11,为我设置JAVA_HOME
的正确命令是 export JAVA_HOME="/usr/libexec/java_home -v 11"
【参考方案2】:
当系统中没有设置虚拟设备时会出现此问题(没有目标版本或没有目标设备)。我不确定这是否是必须的。您可以使用 SDK 管理器添加设备。
在 SDK 管理器中,添加一个 android 存储库(例如 - Android 5.0.1 API 21)和所有依赖项,如 SDK 工具等。
然后尝试科尔多瓦要求。 如果你能够运行模拟器的实例,那么这个错误就会消失..(它对我有用!)
希望这会有所帮助..
【讨论】:
您能否更具体地说明如何执行此操作? “在 SDK 管理器中,添加一个 android 存储库(例如 - Android 5.0.1 API 21)和所有依赖项,如 SDK 工具等。” 使用sdkmanager
命令之类的工具。添加平台的示例命令 - sdkmanager "platform-tools" "platforms;android-28"
用于 API 级别 28(最新日期)。更多信息 - developer.android.com/studio/command-line/sdkmanager【参考方案3】:
如果你在 2019 年做好了准备,这就是你需要解决的问题,早先这将是一个路径变量问题,无论它是什么操作系统。 虽然我们处理 Open JDK 11+ 只是为了非常先进或更新到最新版本。
第 1 步:删除所有可用的 JavaVirtualMachines 第 2 步:检查您的系统是否无 Java(无 Java JVM 或 JRE) 第 3 步:安装 Java 8 JDK(因为 Java 1.8 和相应的 JRE 支持 Cordova) 第 4 步:使用 sdkmanager 命令安装 Android Target。 第 5 步:根据要求安装所需的任何内容,并使用 bash 配置文件或临时路径在 mac 中设置它们的路径。或者您可能需要一次又一次地设置它。
您很高兴,抱歉,我无法在此处分享这些命令,因为它们已经在 Google 中可用。没有恶意!我知道你正在解决这个问题,但我希望这能帮助你理解 Cordova 的要求。
【讨论】:
【参考方案4】:在 Android Studio 中,您可以在 Mac 上使用 cmd + ;
或在 Windows/Linux 上使用 Ctrl + Alt + Shift + S
来拉出“项目结构”对话框。在那里,您可以设置 JDK 位置以及 Android SDK 位置。
将此添加到您的 .bashrc 或 .zshrc 配置中,以便 JAVA_HOME 变量指向 Android 使用的 Java 版本。
【讨论】:
【参考方案5】:要进行更改在您的系统上永久保存并且变量在关闭终端后继续工作,请在重新启动后使用:
nano ~/.bash_profile
添加行:
export ANDROID_HOME=/YOUR_PATH_TO/android-sdk
export JAVA_HOME=`/usr/libexec/java_home -v 1.8`
export PATH=$PATH:$ANDROID_HOME/platform-tools
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/emulator
要使其立即可用,请运行
source ~/.bash_profile
重新打开终端并检查它是否有效:
echo $ANDROID_HOME
echo $JAVA_HOME
【讨论】:
【参考方案6】:此外,如果您在没有模拟器或 Android 设备的情况下运行应用程序,可能会出现此问题。
【讨论】:
以上是关于avdmanager:命令失败,退出代码为 1 cordova的主要内容,如果未能解决你的问题,请参考以下文章
MacOS“错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)”
Apple Mach-O链接器(id)错误 - 链接器命令失败,退出代码为1(使用-v查看调用)C ++ SFML
无法安装“cordova-plugin-whitelist”:错误:cmd:命令失败,退出代码为 1