我正在尝试使用maven构建一个android项目。但是当我跑步时: mvn clean install 我收到以下错误:
目标com.jayway.maven.plugins.android.generation2的执行default-generate-sources:android-maven-plugin:3.4.1:generate- 消息来源失败:找不到工具'aapt'。请提供正确的Android SDK目录路径作为配置参数< \ sdk>< \ path> ...< / path>< / sdk>在插件中。作为替代方法,您可以将参数添加到命令行:-Dandroid.sdk.path = ...或设置环境变量ANDROID_HOME。 - > [帮助1]
我已将ANDROID_HOME设置为sdk目录。这可能是什么问题?
答案 0 :(得分:39)
在android sdk的最后一个版本中,目录结构发生了变化。像aapt或dex这样的构建工具已经从platform-tools迁移到build-tools目录。在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>
答案 1 :(得分:7)
如果您使用的是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
答案 2 :(得分:3)
版本3.6.0的changelog中记录了正确的解决方案
只需将sdk平台配置添加到Android Maven插件中就像这样
<configuration>
<sdk>
<platform>17</platform>
</sdk>
</configuration>
答案 3 :(得分:1)
,指定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>
答案 4 :(得分:0)
如果android sdk版本高于21,只需将%ANDROID_HOME%/ build-tools添加到系统的环境变量PATH中。
到“Nemin Shah” - 复制文件并不是一个好主意。
答案 5 :(得分:0)
我遇到了同样的问题。最后我设法在两小时后解决了这个问题。为了简化并在5分钟内解决问题,我列出了以下步骤
第1步 - 在Eclipse中使用测试版链接将 Android Maven插件更新为0.4.3.2013
http://rgladwell.github.io/m2e-android/updates/master/
第2步
<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'
希望有所帮助