Kesalahan kompilasi Android Hello-World: Intellij tidak dapat menemukan aapt

90

Saya mencoba menyiapkan lingkungan pengembangan Android menggunakan IntelliJ di Ubuntu 12.04. Saya membuat Modul Aplikasi Android, tetapi ketika saya mencoba membangun, saya mendapatkan kesalahan berikut:

android-apt-compiler: Tidak dapat menjalankan program "/ home / jon / Programs / android-sdk-linux / platform-tools / aapt": java.io.IOException: error = 2, Tidak ada file atau direktori seperti itu

Beberapa jam menjelajahi internet tidak membantu.

By the way, saya berlari locate aaptdi terminal dan menemukan yang aaptterletak di/home/jon/Programs/android-sdk-linux/build-tools/17.0.0/aapt

jonS90
sumber
Terima kasih atas semua jawabannya guys! Saya beralih ke garpu Android Studio , dan itu berfungsi dengan baik. Tapi menurut saya solusi lain terkait symlink atau android-maven-plugin mungkin lebih sesuai untuk pengguna intellij lainnya. Saya kira ini akan diperbaiki dalam pembaruan dalam hitungan waktu ...
jonS90

Jawaban:

130

Tampaknya update terbaru untuk rilis SDK r22 memindahkan aapt dan lib jar dari platform-tools ke direktori build-tools. Sementara kami menunggu JetBrains merilis pembaruan, berikut perbaikan cepat menggunakan beberapa tautan simbolis:

Dari direktori AndroidSDK / platform-tools Anda, jalankan perintah berikut:

ln -s ../build-tools/17.0.0/aapt aapt
ln -s ../build-tools/17.0.0/lib lib

... dan IntelliJ harus dapat dikompilasi seperti biasa.

Simon Tamu
sumber
21
Hai, cocok untukku juga. Sekadar info: Saya menjalankan Intellij di bawah Windows, Anda dapat membuka prompt DOS dengan hak istimewa admin, dan menjalankan: mklink D:\Android\android-sdk\platform-tools\aapt.exe D:\Android\android-sdk\build-tools\17.0.0\aapt.exedan mklink /D D:\Android\android-sdk\platform-tools\lib D:\Android\android-sdk\build-tools\17.0.0\lib
Francesco Pez
Juga harus menambahkan:ln -s ../build-tools/17.0.0/aidl aidl
xaviert
3
Jika Anda mendapatkan ini dan menjalankan aapt secara langsung juga mengatakan file tidak ditemukan, Anda mungkin mengalami masalah 64-bit: tautan
Tomas
@FrancescoPez Tidak bekerja di XP atau sistem yang menggunakan FAT32. Untuk WinXP: schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html
Yet Another User
Untuk pengguna Windows 64Bit seperti Francesco Pez hanya menyebutkan petunjuk untuk jalur dengan spasi: letakkan kedua jalur dalam tanda kutip misalnya mklink "C: \ Program Files \ androidsdk \ sdk \ platform-tools \ aapt.exe" "C: \ Program Files \ androidsdk \ sdk \ build-tools \ android-4.3 \ aapt.exe "
Christian Schäfer
21

perbarui IntelliJ Anda ke 12.1.4 dengan menggunakan rilis beta sebagai saluran pembaruan masukkan deskripsi gambar di sini

IHeartAndroid
sumber
2
Ini berhasil, namun, saya harus memilih RELEASES AWAL, yang menunjukkan pembaruan .4 kemudian ketika dimulai ulang saya mendapatkan 3.x yang saya tolak. (Mac OS X 10.8.x)
Martin Marconcini
12

Di Windows itu cukup untuk menyalin saja aapt.exe, lib\dx.jardandx.bat

dari build-tools \ android-4.2.2

untuk

alat platform

radistao.dll
sumber
10

Masalah yang sama terjadi pada saya dengan android-studio. Tapi, ini mungkin juga berlaku untuk IntelliJ IDE.

Namun, ketika memeriksa lokasi file, saya melihat itu aaptberada di lokasi yang diharapkan.

Dalam kasus saya, masalahnya adalah saya menjalankan sistem linux Ubuntu 64-bit yang tidak dapat mengeksekusi 32-bit yang aaptdapat dieksekusi.

Menginstal pustaka kompatibilitas 32-bit memecahkan masalah ini dalam kasus saya: sudo apt-get install ia32-libs

Henk Van de Berg
sumber
Tampaknya ia32-libstidak lagi tersedia untuk Ubuntu 13.10 dan yang lebih baru.
Chad Bingham
Tambahkan deb http://archive.ubuntu.com/ubuntu/ raring main restricted universe multiverseke /etc/sources.list, lalu sudo apt-get updatedan kemudiansudo apt-get install ia32-libs
Mendhak
6

saya menyelesaikannya dengan ini ke perintah baris

ln -s ~/Programs/android-sdk-linux/build-tools/17.0.0/aapt ~/Programs/android-sdk-linux/platform-tools/aapt
ln -s ~/Programs/android-sdk-linux/build-tools/17.0.0/lib ~/Programs/android-sdk-linux/platform-tools/lib
taha
sumber
3

Saya juga menyadarinya.

ADT telah diperbarui dan mereka menambahkan alat pembangunan baru ini di mana mereka memindahkan semuanya. Intellijidea tidak memperbarui jalur sehingga mencari aapt di jalur lama.

Saya tidak tahu bagaimana menyelesaikannya, jadi beri tahu saya jika Anda menemukan solusi ...

MEMPERBARUI:

Saya pikir Anda hanya memiliki 2 opsi:

1) Gunakan Android Build studio: http://developer.android.com/sdk/installing/studio.html 2) Salin (ini kotor tapi berfungsi) semua konten dari build-tools / 17.0.0 / ke platform-tools / dan itu akan dibangun

StErMi
sumber
Ah, masalah pembaruan. Ok, jadi aku hanya menemukan bahwa Google merilis Android Studio , yang merupakan garpu dari Intellij. Mungkin Google mengharapkan orang beralih ke Android Studio daripada memperbarui Intellij?
jonS90
Ya, mereka merilisnya (lihat keynote Google I / O kemarin). Ini pada dasarnya JideaCommunity + lebih fokus pada android. Kemudian akan digabungkan dengan JideaPro (saya harap begitu).
StErMi
2
Ini sebenarnya bukan garpu, ini didasarkan pada build Program Akses Awal. Setelah build EAP menjadi IntelliJ jalur utama, ia akan memiliki fitur yang sama dengan yang dimiliki Android Studio.
powerj1984
2

Terima kasih atas tipnya! Di Mac yang menjalankan Android 4.2.2 SDK, ini bekerja dengan baik. Anda hanya perlu memperbarui jalur Anda. Misalnya

ln -s ../build-tools/android-4.2.2/lib lib

ln -s ../build-tools/android-4.2.2/aapt aapt

martenc
sumber
1

Saya mengalami masalah ini tetapi dengan android-maven-plugin dan sebagai varian dari item # 2 Anda daripada menyalin file, saya hanya membuat tautan simbolis / lunak untuk aapt

cd platform-tools
ln -s ../build-tools/17.0.0/aapt ./

Pendekatan ini tampaknya membuat semua bangunan saya berfungsi kembali.

Don H.
sumber
1

Clone android-maven-plugin di GitHub dan instal di repo Anda

git clone https://github.com/jayway/maven-android-plugin.git
cd ... / maven-android-plugin /
mvn clean install

Kemudian perbarui pom Anda untuk menggunakan plugin versi 3.5.4-SNAPSHOT. Semuanya harus bekerja dengan baik!

avianey
sumber
Namun, perhatikan bahwa ini akan memperbaiki build maven, tetapi bukan build IntelliJ. Untuk itu, solusi tautan simbolis akan membantu sampai IntelliJ memperbaikinya.
Andy Dennie
Anda seharusnya dapat menemukan versi android-maven-plugin di suatu tempat di
konfigurasi
sistem build IntelliJ bawaan tidak menggunakan android-maven-plugin. Untuk membuatnya berfungsi, Anda perlu melakukan tautan simbolis. Dan jika Anda melakukan tautan simbolik, Anda tidak perlu memperbarui ke snapshot terbaru dari android-maven-plugin; tautan akan memperbaiki build IntelliJ dan versi android-maven-plugin yang tidak terbaru.
Andy Dennie
Ya, saya memiliki lingkungan windows. Mulai jendela DOS sebagai administrator, lalu gunakan perintah mklink. Buka alat platform, lalu buat tautan untuk aapt.exe, aidl.exe, dexdump.exe, dx.bat, dan lib \ dx.jar ke mitra mereka di build-tools \ 17.0.0 dan build-tools \ 17.0. 0 \ lib. Catatan: Anda harus membuat subfolder lib di bawah alat platform.
Andy Dennie
0

Saya menjalankan tiga perintah ini dan masalah saya teratasi

mklink "%ANDROID_HOME%\platform-tools\aapt.exe" "%ANDROID_HOME%\build-tools\17.0.0\aapt.exe"

mklink /D "%ANDROID_HOME%\platform-tools\lib" "%ANDROID_HOME%\build-tools\17.0.0\lib"

mklink "%ANDROID_HOME%\platforms\android-17\tools" "%ANDROID_HOME%\build-tools\17.0.0\aidl.exe"

Jika Anda belum menyetel variabel Lingkungan ANDROID_HOME, ganti% ANDROID_HOME% dengan jalur ke Android SDK Anda, misalnya C: \ Android \ android-sdk

Raheel
sumber
0

Di Mac OS Anda perlu

$ cd platform-tools
$ ln -s ../build-tools/android-4.2.2/aapt aapt
$ ln -s ../build-tools/android-4.2.2/lib lib
Alexander Volkov
sumber
0

Goodlife sekali lagi. Hanya memetikan proyek bersih kesalahan dan Anda siap untuk pergi.

Goodlife
sumber