我尝试了每种广告方法来指定使用Android-Maven-Plugin构建Android应用时的Android SDK的路径,但无效。不管我做什么,当我运行
时 mvn clean install
我得到
... 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.
i设置ENV变量Android_home指向SDK的根目录,并导出它。然后
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
...
<configuration>
<sdk>
<path>${env.ANDROID_HOME}</path>
<platform>19</platform>
</sdk>
...
</configuration>
</plugin>
不起作用。(我在SDK中安装了API 19)
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
...
<configuration>
<sdk>
<path>/absolute/path/to/sdk</path>
<platform>19</platform>
</sdk>
...
</configuration>
</plugin>
不起作用
<properties>
<android.sdk.path>/absolute/path/to/sdk</android.sdk.path>
</properties>
不起作用。和
mvn clean install -Dandroid.sdk.path=/absolute/path/to/sdk
不起作用。
我还尝试了附加工具,平台工具和构建工具/19.1.1在SDK到$ PATH中的目录,这也不起作用。AAPT工具在我的路径上可用,但是Maven插件拒绝看到它。我搜索了网络,我看到的唯一建议就是做我所做的事情。
我想念什么?我在OSX系统上进行此操作。
Android Maven插件的较旧版本可能无法与最新的SDK一起使用。例如,在3.6.0版中添加了对SDK 22的支持。检查ChangElog。
3.6.0
该插件已更新以使用SDK Release 22.0。21.1在CI服务器上工作。它可能适合或可能不适用于较旧版本。
您不需要在pom.xml中配置 ANDROID_HOME
,我的工作配置看起来像这样:
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<version>3.8.2</version>
<configuration>
<sdk>
<platform>19</platform>
</sdk>
</configuration>
</plugin>
正确配置ANDROID_HOME
,对我来说,这指向
.../adt-bundle-linux-x86_64-20131030/sdk/
在调用Maven之前,请确保正确配置它。例如,只需运行echo $ANDROID_HOME