【问题标题】:Maven is looking in the wrong directory for the Android tools - how can I correct this?Maven 在错误的目录中查找 Android 工具 - 我该如何纠正这个问题?
【发布时间】:2011-08-29 13:49:25
【问题描述】:

我一直按照此处的说明进行操作 - 我想构建 helloworld.apk,并且通常开始进行 Android/Maven 开发。

https://github.com/akquinet/android-archetypes/wiki

每当我尝试编译时,都会收到以下错误消息:

Embedded error: ANDROID-040-001: Could not execute: Command = /bin/sh -c cd /home/sal/workspace/foo5 && /home/sal/opt/android-sdk-linux_x86/platforms/android-8/tools/aapt/package -m -J /home/sal/workspace/foo5/target/generated-sources/r -M /home/sal/workspace/foo5/AndroidManifest.xml -S /home/sal/workspace/foo5/target/generated-sources/combined-resources/res -I /home/sal/opt/android-sdk-linux_x86/platforms/android-8/android.jar, Result = 127
[INFO] ------------------------------------------------------------------------

它正在一个过时的位置寻找 aapt 实用程序。我似乎记得旧版本的 Android SDK 对每个可用平台都有一个工具目录。这已更改,因此有一个共享工具和平台工具文件夹。

如何让 maven 使用正确的文件夹。

一种解决方案是将所有工具简单地复制到一个杂乱的文件夹中,但肯定有更优雅的方法吗?

更新 0:我已经设置了 SDK 路径...

<properties>
    <outputDirectory>target/classes</outputDirectory>
    <!-- Path to the sdk in the file system -->
    <sdkPath>/home/sal/opt/android-sdk-linux_x86</sdkPath>
</properties>

【问题讨论】:

  • 你设置那些属性的方式不对,不会被插件拾取。

标签: android maven-2 maven


【解决方案1】:

最好的方法是设置 ANDROID_HOME 环境变量。那么就不需要在 pom.xml 文件中设置任何东西了

如果你坚持使用 pom,你必须在 maven android 插件的配置元素中设置 sdk.path 变量,而不是作为通用属性。

如果您仍然有问题,请在 maven android 开发者邮件列表中提问。

您应该检查的另一件事是您使用的是最新版本的插件。

【讨论】:

  • 我使用的是旧版本的插件吗?据我所知,我正在使用最新版本的原型。我对 MVN 还是很陌生。
  • 只要设置ANDROID_HOME环境变量就可以了。
【解决方案2】:

如果它为 maven-android-plugin 生成配置,尝试设置:

<properties><sdk.path>...</sdk.path></properties> 

【讨论】:

  • 其实我已经有了那一套,或者至少我认为我有类似的一套——你能看看我在原帖中添加的更新吗?问题是当它应该在平台工具中寻找时,它正在寻找平台/android-8/tools。问题是 SDK 文件夹的结构发生了变化。
  • 我没有在示例中看到 sdkPath 元素,那么 ... 呢?尝试运行 mvn -X compile 并查找插件设置。
猜你喜欢
  • 2016-06-23
  • 1970-01-01
  • 2021-06-10
  • 2021-09-11
  • 2010-10-18
  • 2011-07-01
  • 2022-12-07
  • 1970-01-01
  • 2016-07-26
相关资源
最近更新 更多