2017-08-07 537 views
1

當執行命令「離子科爾多瓦運行Android的」它提出了一個錯誤:錯誤:avdmanager:命令失敗,退出代碼1個錯誤輸出

ANDROID_HOME=/Users/usuario/Library/Android/sdk 
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home 
No target specified and no devices found, deploying to emulator 

Error: avdmanager: Command failed with exit code 1 Error output: 
Exception in thread "main" java.lang.NoSuchMethodError: com.android.prefs.AndroidLocation.getAvdFolder()Ljava/lang/String; 
    at com.android.sdklib.tool.AvdManagerCli.init(AvdManagerCli.java:278) 
    at com.android.sdklib.tool.AvdManagerCli.run(AvdManagerCli.java:210) 
    at com.android.sdklib.tool.AvdManagerCli.main(AvdManagerCli.java:200) 
+0

該應用程序是否運行'ionic serve'? – 0mpurdy

+0

不是,離子cordova運行android! –

+0

是的,我明白'是你想要做的,但是當你運行'ionic serve'時有錯誤嗎? – 0mpurdy

回答

1

首先,你可以檢查它的工作,當你預啓動在運行「離子cordova運行android」之前的模擬器。使用Android Studio中,您可以預先啓動模擬器,或

emulator -avd your_avd_name 

您可以檢查,看看有什麼avd_name你必須通過運行

emulator -list-avds 

現在假設可以用一個發射前的模擬器中運行。

檢查文件yourApp /平臺/安卓/科爾多瓦/ lib中/ emulator.js

你可能會看到這樣一些代碼:

return superspawn.spawn('avdmanager', ['list', 'avd']) 

這意味着科爾多瓦將嘗試調用「avdmanager名單AVD」。您可以運行相同的命令來查看相同的錯誤。就我而言,當我運行「avdmanager」時,我看到了同樣的錯誤。不知何故,我的Android SDK工具已損壞。我只是從Android Studio中刪除並重新安裝它,然後重新開始工作。

祝你好運!

+0

如果您在沒有Android Studio的情況下使用Android命令行工具,該怎麼辦? – Chloe

+0

我有同樣的問題,但沒有使用科爾多瓦,只有Android命令行工具。我通過刪除tools /目錄並將命令行工具重新提取到android-sdk文件夾中對其進行了修復。 – Chloe

相關問題