membangun ionik Android | error: Tidak ditemukan alat build yang terpasang. Harap instal alat pembuatan Android

95

Ketika saya menjalankan perintah ionic build android di root proyek ionik, saya mendapatkan kesalahan ini:

KEGAGALAN: Build gagal dengan pengecualian.

  • Di mana: Script '/home/javad/Desktop/javadApp/platforms/android/CordovaLib/cordova.gradle' baris: 64

  • Apa yang salah: Terjadi masalah saat mengevaluasi proyek root 'android'.

    Tidak ditemukan alat pembangunan yang terpasang. Harap instal alat pembuatan Android versi 19.1.0 atau lebih tinggi.

  • Coba: Jalankan dengan opsi --stacktrace untuk mendapatkan pelacakan tumpukan. Jalankan dengan opsi --info atau --debug untuk mendapatkan lebih banyak keluaran log.

javad@javad:~/Desktop/javadApp$ ionic build android
Running command: /home/javad/Desktop/javadApp/hooks/after_prepare/010_add_platform_class.js /home/javad/Desktop/javadApp
add to body class: platform-android
Running command: /home/javad/Desktop/javadApp/platforms/android/cordova/build 
ANDROID_HOME=/opt/android-sdk
JAVA_HOME=/usr/lib/jvm/default-java
Running: /home/javad/Desktop/javadApp/platforms/android/gradlew cdvBuildDebug -b /home/javad/Desktop/javadApp/platforms/android/build.gradle -Dorg.gradle.daemon=true

FAILURE: Build failed with an exception.

* Where:
Script '/home/javad/Desktop/javadApp/platforms/android/CordovaLib/cordova.gradle' line: 64

* What went wrong:
A problem occurred evaluating root project 'android'.
> No installed build tools found. Please install the Android build tools version 19.1.0 or higher.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 1.564 secs

/home/javad/Desktop/javadApp/platforms/android/cordova/node_modules/q/q.js:126
                    throw e;
                          ^
Error code 1 for command: /home/javad/Desktop/javadApp/platforms/android/gradlew with args: cdvBuildDebug,-b,/home/javad/Desktop/javadApp/platforms/android/build.gradle,-Dorg.gradle.daemon=true
ERROR building one of the platforms: Error: /home/javad/Desktop/javadApp/platforms/android/cordova/build: Command failed with exit code 8
You may not have the required environment or OS to build this project
Error: /home/javad/Desktop/javadApp/platforms/android/cordova/build: Command failed with exit code 8
    at ChildProcess.whenDone (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/superspawn.js:134:23)
    at ChildProcess.EventEmitter.emit (events.js:98:17)
    at maybeClose (child_process.js:743:16)
    at Process.ChildProcess._handle.onexit (child_process.js:810:5)

di ~ / .profile saya punya:

ekspor PATH = $ PATH: / opt / android-sdk / tools

ekspor PATH = $ PATH: / opt / android-sdk / platform-tools

ekspor PATH = $ PATH: / opt / node / bin

ekspor JAVA_HOME = / usr / lib / jvm / default-java

ekspor ANDROID_HOME = / opt / android-sdk

$ PATH adalah:

/ usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / sbin: / bin: / usr / games: / usr / local / games: / opt / android-sdk / tools : / opt / android-sdk / platform-tools: / opt / node / bin

Masalah penting:

dalam file: /home/javad/Desktop/javadApp/platforms/android/CordovaLib/cordova.gradle | baris 38 :

String[] getAvailableBuildTools() {
    def buildToolsDir = new File(getAndroidSdkDir(), "build-tools")
    buildToolsDir.list()
        .findAll { it ==~ /[0-9.]+/ }
        .sort { a, b -> compareVersions(b, a) }
}

baru saja mengembalikan / opt / android-sdk / build-tools !!!

di / opt / android-sdk / build-tools folder saya punya:

folder android-5.1 yang diekstrak dari: https://dl.google.com/android/repository/build-tools_r22-linux.zip

javad75.dll
sumber
Bekerja untuk saya, periksa stackoverflow.com/questions/38660955/…
vinod

Jawaban:

54

Saya memperbaikinya dengan mengunduh paket sdk yang disebut platform-tools dan buid-tools using sdkmanager. Anda dapat menggunakan sdkmanager.exe atau jika Anda menggunakan SDK CLI , buka ~\AppData\Local\Android\sdk\tools\bindan jalankan perintah ini:

sdkmanager "platform-tools" "platforms;android-26"

atau

sdkmanager "build-tools;27.0.3"

atau keduanya

Setelah itu Anda harus bisa menjalankan ionic cordova run androidatau ionic build android.

Catatan: sdkmanagerperintah globalize dengan menambahkan ~\AppData\Local\Android\sdk\toolsdan ~\AppData\Local\Android\sdk\tools\binke variabel lingkungan Anda.

Fadhil
sumber
2
Jangan lupa untuk menjalankan cmd sebagai Administrator untuk menghindari kesalahan. Saya menghadapi Peringatan: Kesalahan "Gagal membaca atau membuat file properti instal"
neustart47
Terima kasih, ini adalah langkah penting bagi saya dalam proses pembuatan.
BarryMode
membuka terminal dalam folder bin: mengatakan sdkmanager: perintah tidak ditemukan
MJ Montes
@LasLemieux harap periksa apakah Anda menginstal SDK CLI dengan benar. Jika Anda menggunakan windows, seharusnya ada file bernama sdkmanage.exe.
Fadhil
43

Bagi saya yang menjalankan tiga perintah ini, perbaiki masalah di Mac saya:

export ANDROID_HOME=~/Library/Android/sdk
export PATH=${PATH}:${ANDROID_HOME}/tools
export PATH=${PATH}:${ANDROID_HOME}/platform-tools

Untuk kemudahan menyalin, inilah satu baris

export ANDROID_HOME=~/Library/Android/sdk && export PATH=${PATH}:${ANDROID_HOME}/tools && export PATH=${PATH}:${ANDROID_HOME}/platform-tools

Untuk menambahkan secara permanen

Ikuti langkah ini:

  1. Buka file .bash_profile di direktori home Anda (misalnya, /Users/your-user-name/.bash_profile) di editor teks.
  2. Tambahkan export PATH="The above exports here"ke baris terakhir file, di mana dir-Anda adalah direktori yang ingin Anda tambahkan.
  3. Simpan file .bash_profile.
  4. Mulai ulang terminal Anda

Menambahkan ke proses bash untuk sistem yang berbeda

Mamba hitam
sumber
3
Ini membantu saya setiap saat, tetapi segera setelah saya menutup terminal atau memulai ulang mac, saya perlu melakukan ini lagi
Forza
Ini berhasil untuk saya. @Forza jika Anda menambahkannya ke ~ / .bash_profile Anda, itu akan bekerja setiap saat.
caden311
Saya salah memasukkan subdirektori PATH tersebut ke variabel ANDROID_HOME saya. Setelah saya membersihkannya, itu berhasil!
umbyersw
Bagaimana Anda membuatnya tidak perlu menjalankan kembali perintah setiap kali Anda memulai ulang terminal?
Ross Rawlins
Saya mencobanya tetapi tetap saja saya harus melakukannya setiap kali saya membuka terminal.
Ross Rawlins
30

Anda kehilangan alat SDK Android. Silakan coba yang berikut ini:

android list sdk --all
android update sdk -u -a -t <package no.>

Di mana <package no.>adalah 1,2,3,ndan

-u (--no-ui)  # Headless mode
-a (--all)    # Includes all packages (also obsolete ones)
-t (--filter) # Filter by package index
Aley
sumber
6
Ini melempar sayaFilter 19 not supported
Atul Agrawal
2
Pembaruan 2018: Gunakan -t android-27untuk versi 27 dll.
andersand
21

karena kesalahan mengatakan 'Tidak ditemukan alat pembuatan yang diinstal', itu berarti

1: Benar-benar tidak menemukan alat pembuatan

2: Untuk membuatnya menemukan alat build, Anda perlu menentukan jalur ini dengan benar

JALUR SAMA UNTUK UBUNTU (.bashrc) DAN MAC (.bash_profile)

export ANDROID_HOME=/Users/vijay/Software/android-sdk-macosx
export PATH=${PATH}:/Users/vijay/Software/android-sdk-macosx/tools
export PATH=${PATH}:/Users/vijay/Software/android-sdk-macosx/platform-tools

3: PENTING PENTING segera setelah Anda menetapkan variabel lingkungan, Anda perlu memuat ulang variabel evnironmental.

//For ubuntu
$source .bashrc 

//For macos
$source .bash_profile

4: Kemudian periksa terminal

$printenv ANDROID_HOME
$printenv PATH

Catatan: jika Anda tidak menemukan perubahan Anda di printenv maka restart pc dan coba lagi printenv PATH, printenv ANDROID_HOME. Ada juga perintah untuk memuat ulang variabel lingkungan.

4: kemudian buka terminal dan tulis SETENGAH TEXT '$ and' dan tekan tab. Pada tab yang menekan Anda akan melihat nama lengkap '$ android'. Ini memverifikasi semua jalur sudah benar

5: tulis $ android di terminal dan tekan enter

vijay
sumber
18

Harap instal alat pembuatan Android versi 19.1.0 atau lebih tinggi.

Perintah berikut dapat memperbarui SDK Android di Ubuntu dengan cepat dan memperbaiki kesalahan di atas:

android list sdk --all
android update sdk -u -a -t 19
android update sdk -u -a -t 20
Agilox
sumber
6
Filter 19 dan Filter 20 tidak didukung
Skizo-ozᴉʞS
1
sama di sini @ Skizo-ozᴉʞS
Bhimashankar Mantur
17

Saya memperbaiki kesalahan dengan mengubah ANDROID_HOME ke C: \ Users \ Gebru \ AppData \ Local \ Android \ Sdk dari direktori sebelumnya yang salah.

Gebru Welay
sumber
Ini berhasil untuk saya. Saya tidak ANDROID_HOMEmengatur dan Cordova berasumsi bahwa /usr/lib/android-sdkitu salah
hughjdavey
Saya memiliki hal yang sama, kecuali saya berhenti sebelum / Sdk. Tampaknya ada yang salah dengan baris itu yang melanggarnya
Rendah
6

Saya tahu ini tidak terlihat terkait, terutama mengingat pesan kesalahan, tetapi saya memperbaikinya dengan menginstal versi terbaru dari alat Android SDK Build.

RB_
sumber
6

Dalam kasus saya, Variabel Enviroument ANDROID_HOME diarahkan ke direktori (lama) yang salah. Saya dialokasikan ulang untuk memperbaikinya. Dalam kasus saya

ANDROID_HOME = F: \ Program Files (x86) \ Android \ android-sdk

robie2011
sumber
1
Terima kasih, saya telah mengarahkannya ke studio android yang disarankan di tempat lain.
jcubic
5

Bagi saya, masalahnya adalah ANDROID_HOME mengarah ke jalur SDK Android lama. Setelah menginstal Android Studio, saya harus memperbarui ~ / .bash_profile sesuai untuk MAC (El Capitan)

ekspor ANDROID_HOME = "/ Users / corneliusparkin / Library / Android / sdk"

Ingatlah untuk memulai kembali terminal atau menjalankan perintah ini setelah memperbarui ~ / .bash_profile

sumber ~ / .bash_profile

Cornelius Parkin
sumber
5

UNTUK JENDELA: Saya pernah menghadapi masalah seperti ini. Tapi setelah menjelajahinya terpecahkan dalam kasus saya. Saya menggunakan jendela 10. cukup ikuti beberapa langkah di bawah ini:

  1. unduh Android SKD Manager untuk windows. https://developer.android.com/studio di akhir halaman ini. Ini adalah file zip. setelah diekstrak maka akan muncul direktori tools.

  2. Pergi ke drive C: \ buat folder baru 'android-sdk'. salin folder alat dan tempel di
    C: \ android-sdk

  3. buka command prompt sebagai Administrator. Buka cd "c: \ android-sdk \ tools \ bin". sdkmanager akan ditampilkan di sini. ketik skdmanager, akan muncul seperti ini [=======================================] 100 % Menghitung pembaruan ...

  4. setelah itu ketik "sdkmanager platform-tools" itu akan membuat direktori platform-tools di C: \ android-sdk

  5. Sekarang atur variabel lingkungan Sistem: klik kanan pada PC pilih properti. pengaturan sistem akan muncul. klik> Variabel Lingkungan. Variabel Lingkungan akan muncul.

  6. Pada jendela ini Variabel sistem seperti ini. C: \ android-sdk \ platform-tools dan C: \ android-sdk \ tools \ bin

  7. jalankan perintah untuk membangun alat sdkmanager "build-tools; 27.0.3"

    Juga pastikan jalur java telah ditentukan. Saya harap ini akan menyelesaikan masalah.

MAzeem
sumber
Dalam poin no. 3 Anda memiliki kesalahan ejaan "skdmanager" Seharusnyasdkmanager
Santosh
4

2018

The "android" command is deprecated.

mencoba

sdkmanager "build-tools;27.0.3"

Ini berhasil untuk saya, seperti yang dikatakan #Fadhil

Sara Rodriguez Cubillas
sumber
3

Ketik android di baris perintah Anda dan instal "Android SDK Build-tools"

Karan Bhutwala
sumber
2
Dalam kasus saya, Anda benar. Saya lupa menginstal alat Android SDK Build dari SDK Manager. Terima kasih!
tuchi35
2

Saya Cari masalah ini selama berhari-hari .... Saya harap ini akan berguna

SOLUSI AKHIR: (Saya berasumsi bahwa Anda telah menginstal Oracle-JDK dan ANDROID)

buka / etc / environment dengan

 sudo nano /etc/environment


PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/shoniisra/Android/Sdk/tools:/home/shoniisra/Android/Sdk/platform-tools:/home/shoniisra/Android/Sdk/build-tools:/home/shoniisra/Android/Sdk:/home/shoniisra/android-studio/bin"
JAVA_HOME="/home/shoniisra/java/jdk1.8.0_231"
ANDROID_HOME="/home/shoniisra/Android/Sdk/build-tools/29.0.2"
ANDROID_SDK_ROOT="/home/shoniisra/Android/Sdk"
ANT_HOME="/home/shoniisra/ant/apache-ant-1.9.14"

Simpan dan keluar (CTRL + o CTRL + X)

Muat ulang file source /etc/environment

Jika Anda baru saja menginstal Android, Anda harus menerima beberapa lisensi

cd ~/Android/Sdk/tools/bin/

Jalankan sdkmanager:

./sdkmanager --licenses

Kemudian Terima semua, dan Akhirnya buat APK Anda

cd {yourproyect}
sudo ionic cordova build android
Israel Villacís
sumber
1

Dalam kasus saya, masalahnya adalah bahwa ANDROID_HOME menunjuk ke ~/Library/Android/suatu alasan. Jalan yang benar adalah~/Library/Android/sdk

miqrc
sumber
0

Ini berhasil untuk saya! hati-hati dengan versi java baru karena menyebabkan kesalahan, periksa apakah Anda telah menginstal semuanya dan di direktori spesifik Anda,

Saya tidak menggunakan openJDK

export JAVA_HOME="/usr/lib/jvm/java-8-jdk" \
&& export PATH=$JAVA_HOME/bin:$PATH \
&& export ANDROID_HOME=$HOME/Android/Sdk \
&& export PATH=${PATH}:${ANDROID_HOME}/tools \
&& export PATH=${PATH}:${ANDROID_HOME}/platform-tools \
&& export GRADLE_HOME=/usr/share/java/gradle/bin/gradle \
export PATH=$PATH:$GRADLE_HOME/bin

Linux 4.14.39-1-MANJARO # 1 SMP PREEMPT Rabu 2 Mei 19:03:39 UTC 2018 x86_64 GNU / Linux

lihat tangkapan layar di cangkang saya

Adrian Avila
sumber
0

Saya menambahkan <preference name="android-minSdkVersion" value="19" /> saya conf.xmldan bangunan itu berhasil.

Narek Tootikian
sumber
0

Solusi untuk pertanyaan ini ada di sini https://docops.ca.com/devtest-solutions/8-0-2/en/installing/setting-up-the-mobile-testing-environment/preinstallation-steps-for-mobile -testing /

Harap ikuti langkah-langkah ini, dan selesaikan masalah Anda.

Paket Android SDK berisi komponen yang disebut alat kompilasi. Pengujian seluler membutuhkan setidaknya versi 19.0.1, 19.1.0, atau 20.0.0.

Jika versi ini tidak diinstal dengan paket ADT Anda, Anda mungkin menerima pesan kesalahan saat membuat aset seluler di DevTest Workstation:

Junior Placido
sumber
0

Mac IOS

Edit ~ / .bash_profile dengan menggunakan vi atau editor shell lainnya

vi ~/.bash_profile

Tambahkan baris berikut:

export ANDROID_HOME=~/Library/Android/sdk
export PATH=${PATH}:~/Software/android-sdk-macosx/tools:~/Software/android-sdk-macosx/platform-tools"

(simpan file, dan keluar) muat variabel env yang diperbarui ke shell env saat ini:

. ~/.bash_profile
  • Jika karena alasan tertentu Anda memiliki versi lama dari alat pembangunan, Anda dapat memperbaruinya dari studio pengembangan android:
  • Konfigurasi -> SDK Manager -> pilih "Android SDK Build-Tools
  • Periksa "Show Package details"
  • tinjau versi paket ini, perbarui jika perlu
Eyal c
sumber
0

Banyak orang memberikan jawaban, ada yang menjawab sama, ada yang menjawab berbeda. Saya mencoba banyak jawaban tetapi tidak berhasil untuk saya, tentu saja saya mencoba dari jawaban di atas juga tetapi tidak menyelesaikan masalah saya. Dan saya tidak tahu mengapa tetapi saya memiliki kesalahan yang sama bahkan masalah saya diselesaikan dengan JAWABAN ini . Saya hanya ingin menulis itu mungkin bisa membantu seseorang.

pengguna9088454
sumber
0

Saya telah memecahkan masalah ini dengan mengikuti langkah-langkah berikut:

  1. Buka file cordova.gradle (platform / android / cordovaLib / cordova.gradle)
  2. Telusuri metode getAndroidSdkDir ()
  3. Sekarang cukup ganti System.getenv ("ANDROID_HOME") dengan jalur SDK Android Anda yang sebenarnya
Rakshita
sumber
0

Buka Command Prompt. Periksa jalur ANDROID_HOME menggunakan SET ANDROID_HOME, jika tidak diatur maka atur menggunakan perintah di bawah ini.

 SET ANDROID_HOME="C:\Users\VenkateshMogili\AppData\Local\Android\Sdk"

ATAU buka variabel lingkungan sistem dan buat variabel baru sebagai

 Variable Name: ANDROID_HOME
 Variable Value: C:\Users\VenkateshMogili\AppData\Local\Android\Sdk

dan buka file cordova.gradle ( /platforms/android/CordovaLib/cordova.gradle ) dan cari metode getAndroidSdkDir () dan Ganti jalur ANDROID_HOME ( "C: / Users / VenkateshMogili / AppData / Local / Android / Sdk" ) alih-alih System.getenv ("ANDROID_HOME")

Jika masalah lisensi muncul, ketik perintah di bawah ini dengan membuka command prompt di C: \ Users \ VenkateshMogili \ AppData \ Local \ Android \ Sdk \ tools \ bin

  sdkmanager "build-tools;27.0.3"  //<-that will create build-tools folder and licenses folder.

Ini bekerja untuk saya.

VenkateshMogili
sumber
Bukankah baris kelima dari OP log yang diposting sudah menunjukkan bahwa ANDROID_HOMEsudah disetel (ke /opt/android-sdk)?
LWChris
Setelah memeriksa Direktori Rumah Anda, sebagian besar mungkin ada di Rumah / rumah / nama pengguna / Android / sdk Coba atur jika ditemukan. tempel baris di bawah ini di akhir file .bashrc (di direktori home) ekspor ANDROID_HOME = $ HOME / Android / Sdk
VenkateshMogili
0

Peringatan untuk pengembang yang menggunakan Mesin Virtual

Saya menghabiskan waktu yang sangat lama untuk mencoba menyelesaikan masalah ini. Saya mencoba semuanya di posting ini dan lebih banyak solusi di web. Namun, setelah banyak kegagalan dan melalui apa yang dikatakan semua orang di web, saya masih tidak dapat menyelesaikan masalah pada VM saya - yang merupakan gambar Windows 10 di VMWare Workstation.

Setelah meninjau semua solusi dan deskripsi mesin / sistem operasi yang dikembangkan orang-orang pada perbedaan mencolok dalam penyiapan saya adalah saya mengembangkannya di VM.

Solusi: Saya menarik semua kode saya ke mesin host (Windows 10 OS), menginstal ulang semua dependensi, dan tentu saja semuanya berhasil terlebih dahulu. Setelah banyak penelitian, saya menemukan beberapa peringatan bahwa Android Studio memiliki beberapa masalah umum seputar penginstalan dengan benar di beberapa VM. Jadi jika Anda seperti saya & mencoba semua solusi (berkali-kali lipat) dan tidak ada yang berhasil, tetapi Anda berada di VM, Anda mungkin perlu mempertimbangkan untuk membangun di host Anda (atau mesin fisik lainnya)

legenda marshall
sumber
0

Masalah ini saya selesaikan dengan detail berikut, entah bagaimana Android SDK mengelola menginstal semua dependensi dan file yang diperlukan, tetapi lupakan `templates`file ini di mana ditemukan template> gradle> wrapper. Kumpulan file ini hilang.

Screenshot

Path di mac /Users/giogio/Library/Android/sdk/tools/templates

GiovannI Camana
sumber
0

Masalah ini juga terjadi jika Anda melakukan upgrade ke instalasi cordova Anda.

Periksa apakah kesalahan log Anda memiliki sesuatu seperti:

Checking Java JDK and Android SDK versions
ANDROID_SDK_ROOT=undefined (recommended setting) <-------------
ANDROID_HOME=/{path}/android-sdk-linux (DEPRECATED)
Using Android SDK: /usr/lib/android-sdk
Starting a Gradle Daemon (subsequent builds will be faster)

Dalam kasus seperti itu, cukup ubah ANDROID_HOMEke ANDROID_SDK_ROOTdi ~/.bashrc file konfigurasi Anda atau yang serupa.

Dimana sebelumnya adalah:

export ANDROID_HOME="/{path}/android-sdk-linux"

Sekarang adalah:

export ANDROID_SDK_ROOT="/{path}/android-sdk-linux"

Jangan lupa sumbernya: $ . ~/.bashrcsetelah edisi.

Igor Parra
sumber
-1

Buka D: Android sdk \ Android SDK dan klik SDK Manager dan periksa apakah Build Tools diinstal atau tidak jika tidak diinstal, lalu instal alat tersebut

Roshani
sumber
-1
This is very irritating error and i wasted my almost 9 hours to solve this.

Steps to solve:

Notice **ANDROID_HOME** while you run **ionic cordova build android** . command i. for example in my case it was pointing to some other android sdk which i uninstalled and then it started pointing to right sdk.
**In my case i uninstalled :**

brew cask uninstall android-sdk
brew cask uninstall android-platform-tool


then i ran **ionic cordova build android**

> cordova build android
ANDROID_HOME=/Users/anand/Library/Android/sdk
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Home


Then it might say lineces not accepted then run below command :

cd /Users/Android/sdk/tools/bin/
then run ./sdkmanager --licenses
accepts all with y option


Then it might say unable to download jars then go to platform android and build.gradle

and search for buildscript and inside that reverse the order 


repositories {
        jcenter()
        maven {
            url "https://maven.google.com"
        }
    }

Thats it . Enjoy huh
Anand_5050
sumber