如何使用Maven导入同一本机库的多个构建类型?
一点上下文,我正在使用Android Maven插件,我正在尝试导入为几种不同的CPU架构构建的本机库。我阅读了显示如何声明依赖项的帖子here,但我仍然需要在我的存储库中本地安装.so文件。我并不担心如何将第三方库安装到我的本地存储库中,我对如何命名这些东西感到困惑。例如,假设我们有依赖:
<!-- Declare the dependency on a native library, already deployed in the Maven repository -->
<dependency>
<groupId>com.acme.android</groupId>
<artifactId>libsample_jni</artifactId>
<version>0.1</version>
<scope>runtime</scope>
<type>so</type>
</dependency>
加载库的代码是:
System.loadLibrary("sample_jni");
但是,假设我们有多个libsample_jni构建,它们针对不同的CPU架构。我会使用什么命名约定,以便将lib放在我的APK中的正确文件夹中?这甚至是一个命名约定问题,因为插件负责这个?我需要在依赖声明中包含一些标记来执行此操作吗?
答案 0 :(得分:0)
在这种情况下,应通过在maven命名坐标中指定不同的分类器值来区分不同CPU架构的不同二进制工件。
见http://maven.apache.org/pom.html#Maven_Coordinates