使用带有内部库的 maven 构建 android 项目

Posted

技术标签:

【中文标题】使用带有内部库的 maven 构建 android 项目【英文标题】:Build android project using maven with internal libraries 【发布时间】:2014-04-22 15:08:51 【问题描述】:

我有一个使用原生 android 库和内部库的 android 库。如果我像 android 应用程序一样从 eclipse 执行所有工作,但如果我尝试使用 maven 编译(这是一个使用 eclipse 和 maven-android-plugin 的 maven 项目)它会失败:

[ERROR] 未能执行目标 org.apache.maven.plugins:maven-compiler-plugin:3.1:compile 项目设备上的(默认编译):编译失败:编译 失败:[错误] /C:/android/device/epayment/gateway/PAX.java:[34,23] C:\android\device\epayment\gateway\PAX.java:34: 包 com.pax.poslink 不存在

我的 pom.xml 包含:

<build>
<sourceDirectory>src</sourceDirectory>
<finalName>../bin/$project.artifactId</finalName>
<plugins>
    <plugin>
        <groupId>com.jayway.maven.plugins.android.generation2</groupId>
        <artifactId>android-maven-plugin</artifactId>
        <version>3.7.0</version>
        <configuration>
            <nativeLibrariesDirectory>$project.basedir/libs</nativeLibrariesDirectory>
            <sdk>
                <path>$env.ANDROID_HOME</path>
                <platform>15</platform>
            </sdk>
        </configuration>
        <extensions>true</extensions>
    </plugin>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
            <source>1.6</source>
            <target>1.6</target>
        </configuration>
    </plugin>
</plugins>

标签 nativeLibrariesDirectory 似乎对我不起作用。

我做错了什么?

感谢您的帮助

【问题讨论】:

【参考方案1】:

您必须声明对您的库的依赖并将其托管在 Maven 存储库(而不是 lib 文件夹)中。

【讨论】:

以上是关于使用带有内部库的 maven 构建 android 项目的主要内容,如果未能解决你的问题,请参考以下文章

带有 git 存储库的 Maven 发布插件忽略 scm.user scm.password

带有 maven 和不可解析的构建扩展的 Android:插件 com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.

带有依赖库的 Maven EJB 打包

构建包含专有库的maven项目[重复]

维护内部 Maven 存储库的技巧?

掌握 Maven 私服