注意:我使用的是Maven 3.2.2,Eclipse Luna
这是我使用Android AAR存档的pom.xml中的依赖项
<dependency>
<groupId>com.github.gabrielemariotti.cards</groupId>
<artifactId>library</artifactId>
<version>1.7.3</version>
<type>aar</type>
</dependency>
我可以在target / classes文件夹中看到安装的类。
但是当我尝试在AAR中使用类时,Eclipse显示的类无法解析。我在使用pom.xml中的JAR依赖项添加的类时没有问题
非常感谢任何帮助。
答案 0 :(得分:6)
目前,m2e-android plug-in无法支持AAR文件,因为ADT开发团队have not added AAR support to the Eclipse ADT plug-in。
这是一个悬而未决的问题:
答案 1 :(得分:0)
在做了一些在线研究之后,似乎没有简单直接的方法可以做到这一点。 AAR 不是标准格式,Eclipse 不支持。它需要一个黑客才能让它发挥作用。以下是具有不同经验水平的三个选项:
$ANDROID_HOME/extras/android/support
中标准 Android 库的源代码。 (或者,如果您可以获取正在使用的任何第三方库的源代码,那也应该可行。)将该库作为单独的项目导入您的工作区,并设置其属性以将其标识为 Android 库。然后,在项目属性的 Android 部分,添加一个库引用。这不会在 Eclipse 之外产生任何影响(例如,它不会影响 Maven 命令行构建),但它将允许 Eclipse 解析对该库的引用。我已经为一些 v7 支持库成功地做到了这一点。classes.jar
和一堆 Android 特定资源的 zip 文件,所有这些资源似乎都是 Eclipse 可以使用的格式。如果您至少重新构建了一次该库,请从您的 M2 缓存 (~/.m2/repository
) 中获取它。将 AAR 解压缩到您选择的目录中(只要您计划针对该库进行构建,您就需要将其保留)。将 classes.jar
添加到项目的类路径中。这应该让 Eclipse 解析任何 Java 引用,但不解析特定于 Android 的引用(例如样式)。答案 2 :(得分:-1)
您可以尝试我的Maven插件https://bitbucket.org/komo81/eclipse-aar-maven-plugin。
Plugin为Android AAR依赖项生成Eclipse项目,以便在Eclipse中轻松导入。它与https://github.com/simpligility/android-maven-plugin一起使用,它将Android AAR依赖项解压缩到/ target / unpacked-libs目录中。这个插件获取这些解压缩的依赖项并修改它们以便在Eclipse中为ADT插件轻松导入。因此插件在“生成”目标执行期间进行以下更改:
<强>用法强>
将插件添加到您的pom.xml
<build>
<plugins>
<plugin>
<groupId>org.bitbucket.komo81</groupId>
<artifactId>eclipse-aar-maven-plugin</artifactId>
<version>1.0.0</version>
<executions>
<execution>
<goals>
<goal>clean</goal>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<pluginRepositories>
<pluginRepository>
<id>dropbox</id>
<url>https://dl.dropboxusercontent.com/u/52711537/maven-repo/</url>
</pluginRepository>
</pluginRepositories>
运行mvn compile
。通过'Import - &gt;将生成的项目从/ eclipse-aar目录导入Eclipse现有项目进入Workspace'。
插件目标文档
http://komo81.bitbucket.org/eclipse-aar-maven-plugin/plugin-info.html