com.jayway.maven.plugins.android.generation2:插件执行没有被生命周期configuration覆盖?

我很难过 我们最近将我们的Android项目转换为Maven项目。 我的合作伙伴正在使用IntelliJ,我正在使用Eclipse。 他说这个搭配很好。

我对Maven非常陌生,并且遵循了教程,阅读了所有我能find的解决scheme。

我在我的pom.xml文件中有以下错误:

Multiple annotations found at this line: - Plugin execution not covered by lifecycle configuration: com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.3.2:proguard (execution: default-proguard, phase: process-classes) - Plugin execution not covered by lifecycle configuration: com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.3.2:generate-sources (execution: default- generate-sources, phase: generate-sources) 

这是我的pom.xml

 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.groupmd.clientandroid</groupId> <artifactId>clientandroid</artifactId> <version>1.0.0-SNAPSHOT</version> <packaging>apk</packaging> <name>GroupMD</name> <dependencies> <dependency> <groupId>com.google.android</groupId> <artifactId>support-v4</artifactId> <version>r7</version> </dependency> <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.2.2</version> <scope>compile</scope> </dependency> <dependency> <groupId>com.actionbarsherlock</groupId> <artifactId>actionbarsherlock</artifactId> <version>4.2.0</version> <type>apklib</type> </dependency> </dependencies> <build> <finalName>${project.artifactId}</finalName> <sourceDirectory>src</sourceDirectory> <pluginManagement> <plugins> <plugin> <groupId>com.jayway.maven.plugins.android.generation2</groupId> <artifactId>android-maven-plugin</artifactId> <version>3.3.2</version> <extensions>true</extensions> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>com.jayway.maven.plugins.android.generation2</groupId> <artifactId>android-maven-plugin</artifactId> <configuration> <sdk> <!-- platform or api level (api level 4 = platform 1.6)--> <platform>14</platform> </sdk> </configuration> </plugin> </plugins> </build> </project> 

我错过了什么?

发生这种情况的原因是默认情况下,Eclipse的Maven插件(m2e)知道常规插件执行(编译,testing,stream程资源等等)要做什么,但是不知道这些Android的“做什么”插件执行。

有时,例如在configurationmaven-war-plugin,maven-ear-plugin等时,可以通过从Eclipse Marketplace下载所谓的“m2e-connectors”来增强m2e提供的基本function。 之后,m2e知道如何处理某些“非标准”插件执行,并停止显示这些错误。

在这个特定的情况下(Android插件),你很幸运,并且有连接器被安装来解决这个问题。

选项1 :(更简单)

转到Eclipse Marketplace并查找“Android Configurator for M2E”并安装它。

如果出于某种原因,您不能使用/访问Marketplace(例如,如果您使用的是Spring Tool Suite -STS-),则仍然可以安装连接器:

选项2:

帮助 – >安装新软件… – >使用并粘贴以下内容(完全按照原样,不要忽略任何内容)

 Maven Integration for Android Development Tools Dependency Sites - http://rgladwell.github.com/m2e-android/updates/ 

然后按ENTER键。 它会popup一个确认对话框,再次按下ENTER键,你应该能够看到该更新站点上的软件。 只需勾选它们(“NDK插件”是唯一可选的)就是这样,完全重build后,你的问题应该消失了。

希望这可以帮助。