我正在编写一个同时使用 ActionBarSherlock 和 Facebook Android SDK 的 Android 应用程序。这两个库都在其 libs 文件夹中提供了 android-support-v4.jar:
https://github.com/facebook/facebook-android-sdk/blob/master/libs/android-support-v4.jar https://github.com/JakeWharton/ActionBarSherlock/blob/master/library/libs/android-support-v4.jar
但是,在 head 版本中,两个版本的支持 jar 是不同的。这会导致使用 Eclipse 构建我的应用程序失败。
我通过将它们作为 git 子模块包含在我的应用程序的存储库中来使用这两个库。一种解决方案是 fork 这些库之一,更新 fork 中的 android-support-v4.jar 版本,并将我的子模块指向 fork 。虽然这也许是正确的方法,但不知何故感觉不对。
在使用上述方法之前,我想知道是否还有其他选择。许多流行的 Android 库似乎都在使用 maven,使用 maven 是否是解决此问题的好方法,并且对一般的 android 应用程序来说是个好主意?
最佳答案
首先从所有(您的项目、FacebookSDK 等)中删除 android-support-v4.jar。
然后按照以下步骤:
右键单击项目 -> Android 工具 -> 添加支持库,然后再次右键单击项目 -> Android 工具 -> 修复项目属性,在 Facebook SDK 和其他库上执行相同的操作。
并清理构建您的所有项目(Facebook SDK、您的项目和库)。您已完成。
关于android - 如何处理 3rd 方 android 库中的库不匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14227999/