我正在尝试使用maven构建一个android项目。但是当我跑的时候:MVN清洁安装我得到以下错误:
执行default-generate-sources . com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.4.1:generate-来源失败:找不到工具"aapt"。请在插件中提供一个合适的Android SDK目录路径作为配置参数< SDK><path>…。您也可以将参数添加到命令行中:-Dandroid.sdk.path=…或者设置环境变量ANDROID_HOME。-> [Help 1]
我已经将ANDROID_HOME设置为sdk目录。这里的问题是什么?
在上一个版本的android sdk目录结构已经改变。像aapt或dex这样的构建工具已经从平台工具目录移到了构建工具目录。在maven-android-plugin版本3.6.0中添加了对新目录结构的支持,但您使用的是版本3.4.1。在pom.xml中将插件版本更改为3.6.0必须有所帮助。下面是我的pom.xml的片段:
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<version>3.6.0</version>
<configuration>
<androidManifestFile>src/main/other/AndroidManifest.xml</androidManifestFile>
<resourceDirectory>src/main/resources</resourceDirectory>
<sourceDirectory>src/main/java</sourceDirectory>
<sdk>
<platform>17</platform>
<path>/opt/android-sdk/</path>
</sdk>
<manifest>
<debuggable>true</debuggable>
</manifest>
</configuration>
<extensions>true</extensions>
</plugin>
如果你使用的是android版本17,你可能想要尝试这个文档化的解决方案(即我自己没有找到它)。
cd <android-sdk>/platform-tools
ln -s ../build-tools/17.0.0/aapt aapt
ln -s ../build-tools/17.0.0/lib lib
正确的解决方案在3.6.0版本的变更日志中有记录
只需将sdk平台配置添加到Android Maven Plugin中,就像这样
<configuration>
<sdk>
<platform>17</platform>
</sdk>
</configuration>
在pom.xml文件中指定android sdk的路径
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<version>3.5.1</version>
<extensions>true</extensions>
<configuration>
<sdk>
<path>${ANDROID_HOME}</path>
<platform>16</platform>
</sdk>
</configuration>
</plugin>
如果android sdk版本高于21,只需将%ANDROID_HOME%/build-tools添加到系统的环境变量PATH
到"Nemin Shah"——复制文件不是个好主意。
我遇到了同样的问题。两个小时后我终于解决了这个问题。为了简化并在5分钟内解决问题,我列出了以下步骤
第1步 -在Eclipse中使用测试版发布链接更新您的Android Maven Plugin到0.4.3.2013http://rgladwell.github.io/m2e-android/updates/master/
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<version>3.6.1</version>
<configuration>
<sdk>
<platform>17</platform>
</sdk>
</configuration>
</plugin>
它将解决以下问题
"No Android Platform Version/API Level has been configured"
Could not find tool 'aapt'
希望有所帮助