Jar Mismatch 在依赖项列表中找到了 android-support-v4.Jar 的2个版本

我正在尝试创建两个版本的 Android 应用程序(免费/付费)。我有一个 Android 库,其中包含两者共有的文件。我创建了一个新的 Android 项目,正在尝试使用 Library,但是得到了下面的错误:

Found 2 versions of android-support-v4.jar in the dependency list,
but not all the versions are identical (check is based on SHA-1 only at this time).
All versions of the libraries must be the same at this time.
Versions found are:
Path: /Users/Zaheer/Developer/App Free/libs/android-support-v4.jar
Length: 349252
SHA-1: 612846c9857077a039b533718f72db3bc041d389
Path: /Users/Zaheer/Developer/App Library/libs/android-support-v4.jar
Length: 337562
SHA-1: 27c24d26e4c5d57976e6926367985548678e913c

有什么办法解决这个问题吗? 我一直在尝试没有成功的构建路径。

92966 次浏览

有什么解决办法吗?

删除一个。

我一直在玩构建路径没有成功。

第一步: 撤销所有这些。如果您在 Eclipse 的 ADT 插件的 R16或更高版本上扰乱了构建路径,那么您的做法是错误的。

步骤 # 2: 从这两个版本的 JAR 中选择一个,或者从 SDK 安装的“附加”区域中选择一个。

步骤 # 3: 在 App Library中放入正确的 JAR。

步骤 # 4: 从 App Free中删除该 JAR,因为它将从 App Library中拾取该 JAR。

欢迎您在这两个位置(App FreeApp Library)中使用相同的实际 JAR 文件,尽管这样做会无缘无故地占用额外的空间。

  1. 从 App Free 中删除 android-support-v4.jar
  2. 将同一文件从应用程序库添加到应用程序免费

只需将库从一个项目复制到另一个项目。也许两者的时间戳应该是一样的。

在库和项目中添加外部 jar 时使用相同的 jar

在一些场景中,您有多个库项目,它们的 libs和构建路径中都有 android-support-v4.jar,并且您的项目对这两者都有依赖关系。例如,在我的工作空间中有以下库项目,

  • Libfacebook
  • 动作条

这两个项目都是独立的,我的 project.properties如下所示,

# Project target.
target=android-17
android.library.reference.1=../libfacebook
android.library.reference.2=../libsherlockactionbar

当我构建我的项目时,我遇到了一个 jar 不匹配的问题,对同一文件的两个副本有重复的引用。我为了解决这个问题所做的只是一点小把戏。我创建了一个名为 libcommons的新库项目,作为我工作区中所有其他 图书馆项目(包括 libfacebooklibsherlockactionbar)的父项目。然后,我从所有其他项目中删除了支持库,并在 libcommonsLibs文件夹中只保留了一个副本。然后我添加了 libcommons作为我所有 其他库项目的参考。一旦清理了我的工作空间,一切都变得如此神奇。

解决方案:

  1. 右击“免费”项目 > Android 工具 > 添加支持库。
  2. 在“付费”项目上做同样的事情。
  3. 清理所有项目

以上解决方案大多解决了问题。使用这些解决方案后,问题仍然存在。然后

转到 project 文件夹-> libs-> 并删除“ android-support-v4.jar”

希望它能像解决我的问题一样解决你的问题。

检查是否有不相关的项目对你开放,因为这是我的情况,似乎其中一个 JAR 文件与一个不同的项目,我没有工作,所以我只是关闭了该项目,做了一个干净的构建项目,我的工作,不再有问题!希望这对谁有帮助!

这是一个比删除和添加文件更优雅的修复!

你只需要:

  1. 右击项目 App Free
  2. 进入「 Android 工具」 > 「添加支援程式库」
  3. 批准权限并让它更新库
  4. 对项目 AppLibrary 重复此过程

Android 支持库将会同步(:

嗯. . 这对我有用:

去吧

项目文件夹 > libs

然后,删除“ android-support-v4.jar”

然后

工程 > 清洁

会成功的!

您只需要在每个项目上具有完全相同的 android-support-v4.jar 校验和。 为此,您可以在所有相互冲突的项目/库中复制/传递其中的一个。

无事可做,打扫和享受:)

可能你同时打开2个项目(都使用 android-support-v4.jar)

很简单的解决办法

一个非常简单的解决方案为我的情况下工作,只需将相同的(android-support-v4.jar) jar 文件复制到所有项目。将不会有更多的冲突。

1从任何一个项目的 libs 文件夹复制 jar 文件 android-support-v4.jar。

2从第二个项目已经存在的 libs 文件夹中删除 jar 文件 android-support-v4.jar。

3将新复制的第一个项目的 jar 文件粘贴到第二个项目的 libs 文件夹中。

现在罐子不匹配的问题将得到解决。

我只是有这个问题,但是我没有删除冲突的 Android-support-v4. jar,而是将它重命名为 Android-support-v4 _ PROJECT. jar,这样就消除了冲突。

如果您想知道如何在 Eclipse 中重命名文件,只需突出显示该文件并按 F2即可。