将android ndk依赖项部署到maven存储库

时间:2013-04-25 11:49:19

标签: maven android-ndk android-maven-plugin

我有一个Android项目依赖于第三方,仅二进制JNI库。使用ant,我可以将.so放在libs /和jni /中的标题中并完成。

然而,我的其余android项目都使用maven,我希望能够将这个库集成到我现有的基于maven的项目中,就像我任何其他库(即带有<dependency />条目一样,库自动从公司服务器下载。)

我尝试使用mvn deploy:deploy-file -Dpackaging=so-Dclassifier=armeabi使用-Dpackaging=har手动上传.so文件,然后使用LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := test LOCAL_LDLIBS := -llog LOCAL_SHARED_LIBRARIES := my-dependency LOCAL_SRC_FILES := test.cpp include $(BUILD_SHARED_LIBRARY) 将邮件上传到邮箱中并进行部署。但是NDK仍然无法检测到库和标题。

我的Android.mk是

<dependency>
    <groupId>com.thirdparty.my-dependency</groupId>
    <artifactId>my-dependency</artifactId>
    <version>1.0</version>
    <classifier>armeabi</classifier>
    <type>so</type>
</dependency>

和我的pom中的依赖

{{1}}

在maven for android中部署像这样的第三方库的最佳方法是什么?

1 个答案:

答案 0 :(得分:3)

在对样本进行一些修补之后,我设法让它进行编译。

部署很好,但事实证明我需要添加

LOCAL_SHARED_LIBRARIES := $(ANDROID_MAVEN_PLUGIN_LOCAL_SHARED_LIBRARIES)
include $(BUILD_SHARED_LIBRARY)
include $(ANDROID_MAVEN_PLUGIN_MAKEFILE)

到应用的Android.mk