Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android Maven Could not find tool 'aapt'

i was trying to follow this tutorial:

http://www.gdgankara.org/2012/11/01/step-by-step-android-development-with-maven/

but after setting up the environment, and create a project, at the "run as\maven install" step i got this:

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details. [INFO] Scanning for projects... [INFO]                                                                          [INFO] ------------------------------------------------------------------------ [INFO] Building tutorial 0.0.1-SNAPSHOT [INFO] ------------------------------------------------------------------------ [INFO]  [INFO] --- android-maven-plugin:3.1.1:generate-sources (default-generate-sources) @ tutorial --- [INFO] ANDROID-904-002: Found aidl files: Count = 0 [INFO] ANDROID-904-002: Found aidl files: Count = 0 [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 1.889s [INFO] Finished at: Sat May 18 00:32:12 CEST 2013 [INFO] Final Memory: 8M/111M [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.1.1:generate-sources (default-generate-sources) on project tutorial: Execution default-generate-sources of goal com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.1.1:generate-sources failed: Could not find tool 'aapt'. Please provide a proper Android SDK directory path as configuration parameter <sdk><path>...</path></sdk> in the plugin <configuration/>. As an alternative, you may add the parameter to commandline: -Dandroid.sdk.path=... or set environment variable ANDROID_HOME. -> [Help 1] [ERROR]  [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR]  [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginExecutionException 

I've tried lot of times, but with no luck. I have Eclipse Juno on Windows7 64 bit, APK Tool installed and Maven 3.0.5.

It seems a well known problem for maven staff:

https://code.google.com/p/maven-android-plugin/issues/detail?id=104

but it should be solved from ages...

My Environment User variables:

M2_HOME=C:\Program Files\Java\apache-maven-3.0.5  ANDROID_HOME=C:\adt-bundle-windows-x86_64-20130514\sdk 

My Environment System variable:

Path=......;%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\build-tools;%ANDROID_HOME%\platforms;%M2_HOME%\bin;%ANDROID_HOME%\build-tools\android-4.2.2 

Does anybody know how to workout this trap?

thanks!

like image 725
Black.Jack Avatar asked May 17 '13 23:05

Black.Jack


1 Answers

I also encountered the same problem when using latest ADT from google and trying to compile the bootstrap android platform.

The latest r17 build separate out aapt to build-tools folder. Hence it is maven-android-plugin cannot support it.

See issue discussed here.

Tried and working:

cd $ANDROID_HOME/platform-tools ln -s ../build-tools/android-4.2.2/aapt aapt ln -s ../build-tools/android-4.2.2/lib lib ln -s ../build-tools/android-4.2.2/aidl aidl 

Some installations may be structured using the API version:

cd $ANDROID_HOME/platform-tools ln -s ../build-tools/17.0.0/aapt aapt ln -s ../build-tools/17.0.0/lib lib ln -s ../build-tools/17.0.0/aidl aidl 

Keep in mind that this is fixed in the latest version (>3.5.3) of the Android Maven Plugin, as other answers point out.

like image 86
user2284918 Avatar answered Sep 18 '22 22:09

user2284918