Error de compilación de Android Hello-World: Intellij no puede encontrar aapt

90

Estoy tratando de configurarme con un entorno de desarrollo de Android usando IntelliJ en Ubuntu 12.04. Creo un módulo de aplicación de Android, pero cuando intento compilar, aparece el siguiente error:

android-apt-compiler: no se puede ejecutar el programa "/ home / jon / Programs / android-sdk-linux / platform-tools / aapt": java.io.IOException: error = 2, no existe tal archivo o directorio

Varias horas de búsqueda en Internet no han ayudado.

Por cierto, corrí locate aapten la terminal y encontré que aaptse encuentra en/home/jon/Programs/android-sdk-linux/build-tools/17.0.0/aapt

jonS90
fuente
Bueno, gracias por todas las respuestas chicos! Cambié a la bifurcación de Android Studio y está funcionando bien. Pero creo que las otras soluciones con respecto a los enlaces simbólicos o el complemento android-maven pueden ser más apropiadas para otros usuarios de intellij. Supongo que esto se solucionará en una actualización en cuestión de tiempo ...
jonS90

Respuestas:

130

Parece que la última actualización de la versión r22 SDK movió aapt y el jar lib de la plataforma-herramientas al directorio de herramientas de compilación. Mientras esperamos que JetBrains publique una actualización, aquí hay una solución rápida usando un par de enlaces simbólicos:

Desde su directorio AndroidSDK / platform-tools, ejecute lo siguiente:

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

... e IntelliJ debería poder compilarse normalmente.

Simon Guest
fuente
21
Hola, perfecto para mi también. Solo para información: ejecuto Intellij en Windows, puede abrir un indicador de DOS con privilegios de administrador y ejecutar: mklink D:\Android\android-sdk\platform-tools\aapt.exe D:\Android\android-sdk\build-tools\17.0.0\aapt.exey mklink /D D:\Android\android-sdk\platform-tools\lib D:\Android\android-sdk\build-tools\17.0.0\lib
Francesco Pez
También había que agregar:ln -s ../build-tools/17.0.0/aidl aidl
xaviert
3
Si obtiene esto y ejecuta aapt directamente también dice que el archivo no se encuentra, es posible que tenga un problema de 64 bits: enlace
Tomas
@FrancescoPez No funciona en XP o en sistemas que usan fat32. Para WinXP: schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html
Otro usuario más
Para los usuarios de Windows 64Bit como Francesco Pez, solo mencionaron la sugerencia para las rutas con espacios: ponga ambas rutas entre comillas, por ejemplo, mklink "C: \ Archivos de programa \ androidsdk \ sdk \ platform-tools \ aapt.exe" "C: \ Archivos de programa \ androidsdk \ sdk \ build-tools \ android-4.3 \ aapt.exe "
Christian Schäfer
21

actualice su IntelliJ a 12.1.4 utilizando versiones beta como canal de actualización ingrese la descripción de la imagen aquí

IHeartAndroid
fuente
2
Esto lo hizo, sin embargo, tuve que seleccionar PRIMEROS LANZAMIENTOS, que mostraba la actualización .4 y cuando se reinició obtuve el 3.x que negué. (Mac OS X 10.8.x)
Martin Marconcini
12

En Windows basta con copiar solo aapt.exe, lib\dx.jarydx.bat

desde build-tools \ android-4.2.2

a

plataforma-herramientas

radistao
fuente
10

El mismo problema me ocurrió con android-studio. Pero, esto probablemente también se aplique al IntelliJ IDE.

Sin embargo, al comprobar la ubicación del archivo, vi que aapt estaba en la ubicación esperada.

En mi caso, el problema era que estaba ejecutando un sistema Linux Ubuntu de 64 bits que no puede ejecutar el aapt ejecutable de .

La instalación de bibliotecas de compatibilidad de 32 bits resolvió este problema en mi caso: sudo apt-get install ia32-libs

Henk Van de Berg
fuente
Parece ia32-libsque ya no está disponible para Ubuntu 13.10 y versiones posteriores.
Chad Bingham
Agregar deb http://archive.ubuntu.com/ubuntu/ raring main restricted universe multiversea /etc/sources.list, luego sudo apt-get updatey luegosudo apt-get install ia32-libs
Mendhak
6

lo resuelvo con esto para line comandos

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
fuente
3

Yo también lo noté.

ADT se ha actualizado y agregaron estas nuevas herramientas de construcción donde movieron todo. Intellijidea no está actualizando rutas, por lo que está buscando en la ruta anterior.

No sé cómo resolverlo, así que avíseme si encuentra una solución ...

ACTUALIZAR:

Creo que solo tienes 2 opciones:

1) Use Android Build Studio: http://developer.android.com/sdk/installing/studio.html 2) Copie (esto está sucio pero funciona) todo el contenido de build-tools / 17.0.0 / a platform-tools / y construirá

StErMi
fuente
Ah, un problema de actualización. Ok, acabo de descubrir que Google lanzó Android Studio , que es una bifurcación de Intellij. ¿Quizás Google espera que la gente cambie a Android Studio en lugar de actualizar Intellij?
jonS90
Sí, lo publicaron (eche un vistazo a la nota de ayer de Google I / O). Básicamente es JideaCommunity + más enfoque en Android. Luego se fusionará con JideaPro (eso espero).
StErMi
2
No es realmente una bifurcación, se basa en la compilación del Programa de acceso anticipado. Una vez que la compilación EAP se convierta en la línea principal de IntelliJ, tendrá las mismas características que tiene Android Studio.
powerj1984
2

¡Gracias por el consejo! En una Mac con Android 4.2.2 SDK, esto funcionó muy bien. Solo necesitará actualizar sus rutas en consecuencia. P.ej

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

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

martenc
fuente
1

Me encontré con este problema pero con android-maven-plugin y como una variante de su elemento # 2 en lugar de copiar los archivos, simplemente creé un enlace simbólico / suave para aapt

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

Este enfoque pareció hacer que todas mis compilaciones funcionaran nuevamente.

Don H.
fuente
1

Clone el complemento android-maven en GitHub e instálelo en su repositorio

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

Luego actualice su pom para usar la versión 3.5.4-SNAPSHOT del complemento. ¡Todo debería funcionar correctamente!

Avianey
fuente
Sin embargo, tenga en cuenta que esto solucionará la compilación de maven, pero no la compilación de IntelliJ. Para eso, la solución alternativa del enlace simbólico debería ayudar hasta que IntelliJ lo solucione.
Andy Dennie
debería poder encontrar la versión de android-maven-plugin en algún lugar de la
configuración de
el sistema de compilación IntelliJ integrado no usa android-maven-plugin. Para que funcione, debe hacer los enlaces simbólicos. Y si hace los enlaces simbólicos, no debería necesitar actualizar a la última instantánea de android-maven-plugin; los enlaces corregirán tanto la compilación de IntelliJ como la versión no más reciente de android-maven-plugin.
Andy Dennie
Sí, tengo un entorno de Windows. Inicie una ventana de DOS como administrador, luego use el comando mklink. Vaya a platform-tools, luego cree enlaces para aapt.exe, aidl.exe, dexdump.exe, dx.bat y lib \ dx.jar a sus contrapartes en build-tools \ 17.0.0 y build-tools \ 17.0. 0 \ lib. Nota: deberá crear la subcarpeta lib en platform-tools.
Andy Dennie
0

Ejecuté estos tres comandos y mi problema se resolvió

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"

Si no ha configurado la variable ambiental ANDROID_HOME, reemplace% ANDROID_HOME% con la ruta a su SDK de Android, por ejemplo, C: \ Android \ android-sdk

Raheel
fuente
0

En Mac OS necesitas

$ 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
fuente
0

Goodlife una vez más. En caso de que se produzca un error, limpie el proyecto y ya está listo.

Buena vida
fuente