2013-06-12 27 views
0

我有使用Eclipse IDE編譯和鏈接良好的項目。該項目使用一些外部jar文件,並使用一些JNI(.so)庫。對於Android項目,我如何獲得maven來獲取lib目錄中的所有庫,包括.so文件?

它們都位於我的項目的libs /目錄中。我的pom.xml文件應該如何爲了libs /文件夾中的所有jar文件以及共享對象包含在APK中。我libs目錄看起來是這樣的:

libs/ 
├── mydevicelib.jar 
├── armeabi 
│   ├── libdevice.so 
├── armeabi-v7a 
│   ├── libdevice.so 
│   ├── libcmiris.so 
├── libcommon.jar 

我使用maven 3.0.5

回答

1

這些罐子應包括在Maven POM的依賴關係。

而不是將它們包含在本地lib文件夾中,它們應該部署到Maven存儲庫。

對於通過maven中央存儲庫可用的任何工件,只需從那裏直接包含依賴項。

對於自定義工件,最好的方法是設置您自己的Maven存儲庫(http://archiva.apache.org/index.cgihttp://www.sonatype.org/nexus/)並將工件部署到該工具。然後你可以把它們作爲依賴關係包含在pom中。

或者,如果這對於您的項目來說是過量的,您可以設置本地項目存儲庫並將工件部署到該項目。

我還沒有用JNI庫實際做過這件事,儘管這個鏈接看起來像可能包含有用的信息來做類似的事情:http://code.google.com/p/maven-android-plugin/wiki/NativeLibsAsDependencies。看起來你只需要到

<type>so</type>

元素添加到依賴。

相關問題