12

Cannot get Android to work with maven. What could be the problem (generated from maven quickstart archetype):

<?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>asd</groupId>
    <artifactId>asd</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>apk</packaging>
    <name>asd</name>

    <properties>
        <platform.version>4.0.3</platform.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>com.google.android</groupId>
            <artifactId>android</artifactId>
            <version>${platform.version}</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>com.jayway.maven.plugins.android.generation2</groupId>
                <artifactId>android-maven-plugin</artifactId>
                <version>3.2.0</version>
                <configuration>
                    <androidManifestFile>${project.basedir}/AndroidManifest.xml</androidManifestFile>
                    <assetsDirectory>${project.basedir}/assets</assetsDirectory>
                    <resourceDirectory>${project.basedir}/res</resourceDirectory>
                    <nativeLibrariesDirectory>${project.basedir}/src/main/native</nativeLibrariesDirectory>
                    <sdk>
                        <platform>15</platform>
                    </sdk>
                    <emulator>
                        <avd>Android4</avd>
                    </emulator>
                    <undeployBeforeDeploy>true</undeployBeforeDeploy>
                </configuration>
                <extensions>true</extensions>
            </plugin>

            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.3.2</version>
                <configuration>
                    <source>1.6</source>
                    <target>1.6</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

Leads to:

Project build error: Unknown packaging: apk

+

Project build error: Unresolveable build extension: Plugin 
com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.2.0 or one of its 
dependencies could not be resolved: Failed to collect dependencies for 
com.jayway.maven.plugins.android.generation2:android-maven-plugin:jar:3.2.0 ()
4

5 回答 5

10

我有同样的问题,因为我在配置部分添加了 android 插件<build><pluginManagement>

移动它来<build><plugins>解决我的问题。

于 2013-10-09T10:19:53.110 回答
6

为您的配置添加extensions选项。android-maven-plugin

扩展

是否从此插件加载 Maven 扩展(例如打包和类型处理程序)。

示例配置:

<plugin>
    <groupId>com.jayway.maven.plugins.android.generation2</groupId>
    <artifactId>android-maven-plugin</artifactId>
    <version>3.9.0-rc.2</version>
    <extensions>true</extensions>
    <configuration>
        <sdk>
            <platform>${android.platform}</platform>
        </sdk>
    </configuration>
</plugin>

这解决了带有apk未知包装的问题。

于 2014-06-17T12:44:12.613 回答
4

替换为 <version>3.2.0</version>然后 <version>3.6.0</version>清理然后安装包。3.6.0 是 android-maven-plugin 的最新版本。

于 2013-06-06T07:32:00.773 回答
4

我目前正在为我的项目使用 android-maven-plugin 3.1.1 并尝试使用 3.2.0,看起来 Maven 从 Maven 中央存储库下载所需的依赖 emma-2.1.5320.jar项之一时遇到了一些麻烦,但是,我已经厌倦mvn clean install了好几次最后下载 emma-2.1.5320.jar。

尝试运行mvn clean install几次,如果仍然无法正常工作,请手动下载并安装,emma-2.1.5320.jar 和 javadoc 在Maven Central Repository上提供:

mvn install:install-file -Dfile=emma-2.1.5320.jar \
                     -Dsources=emma-2.1.5320-sources.jar \
                     -Djavadoc=emma-2.1.5320-javadoc.jar \
                     -DgroupId=emma \
                     -DartifactId=emma \
                     -Dversion=2.1.5320 \
                     -Dpackaging=jar

您现在应该可以使用 android-maven-plugin 3.2.0,希望对您有所帮助。

于 2012-05-16T02:01:41.450 回答
2

您已经安装了适用于 Java 项目(和 .jar 文件)的“普通”Maven 插件。对于 Android,您需要 Maven Android 插件

看看这个

导入到 Eclipse 后,Maven 项目中的 pom 文件出错

于 2012-05-16T01:13:47.470 回答