我正在尝试创建2个版本的Android应用(免费/付费)。我有一个Android库,其中包含两者共有的文件。我创建了一个新的Android项目,并尝试使用该库,但得到以下错误:
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
有关如何解决此问题的任何想法?我一直在玩构建路径,但没有成功。
答案 0 :(得分:176)
有关如何解决此问题的任何想法?
删除一个。
我一直在玩构建路径但没有成功。
步骤1:撤消所有这些。如果你正在搞乱构建路径,那么在Eclipse的ADT插件的R16或更高版本上,你做错了。
步骤2:选择这两个版本的JAR中的一个,或者从SDK安装的“extras”区域中选择一个。
步骤3:将正确的JAR放入App Library
。
步骤4:从App Free
删除一个,因为它会从App Library
中获取该JAR。
欢迎您在两个广告位(App Free
和App Library
)中使用相同的实际JAR文件,但这只会占用额外的空间。
答案 1 :(得分:24)
答案 2 :(得分:12)
以上解决方案主要解决问题。使用这些解决方案后问题仍然存在。然后
转到项目文件夹 - > libs->并删除" android-support-v4.jar"
希望它可以解决您的问题,因为它解决了我的问题。
答案 3 :(得分:11)
在某些情况下,您有多个库项目在其android-support-v4.jar
中具有libs
并且构建路径,并且您的项目对它们都有依赖关系。比如说我的工作区中有以下库项目,
这两个项目都是独立的,我的project.properties
如下所示,
# Project target.
target=android-17
android.library.reference.1=../libfacebook
android.library.reference.2=../libsherlockactionbar
当我构建我的项目时,我得到一个jar不匹配问题,对同一文件的两个副本有重复的引用。我为解决这个问题所做的是一些诡计。我创建了一个名为libcommons
的新库项目,作为我工作区中所有其他库项目的父项,包括libfacebook
和libsherlockactionbar
。然后我从所有其他项目中删除了支持库,并在libcommons
的 libs 文件夹中只保留了一个副本。然后我添加了libcommons
作为对我所有其他库项目的引用。清理完工作区后,一切都像魅力一样。
答案 4 :(得分:8)
这是一个比删除和添加文件更优雅的解决方法!
你只需要:
Android支持库将同步(:
答案 5 :(得分:7)
一个非常简单的解决方案适用于我的案例,只需将相同的(android-support-v4.jar)jar文件复制到所有项目中。不会再发生冲突。
1从任何一个项目的libs文件夹中复制jar文件android-support-v4.jar。
2从已存在的第二个项目的libs文件夹中删除jar文件android-support-v4.jar。
3将新复制的第一个项目的jar文件粘贴到第二个项目的libs文件夹中。
罐子不匹配问题现在将解决。
答案 6 :(得分:5)
只需将库中的一个项目复制到另一个项目即可。也许两者的时间戳必须相同。
答案 7 :(得分:4)
决议:
答案 8 :(得分:2)
检查是否有为您打开的无关项目,因为对我来说就是这种情况,似乎其中一个JAR文件与我不使用的其他项目有关,所以我刚关闭了该项目,做了一个干净的项目,我正在努力,并没有问题了!希望这有助于某人!
答案 9 :(得分:1)
在库和项目中添加外部jar时使用相同的jar
答案 10 :(得分:1)
嗯..它对我有用:
转到
项目文件夹>库
然后,删除“android-support-v4.jar”
然后
项目>清洁
它会起作用!
答案 11 :(得分:1)
我刚遇到此问题,但我没有删除有冲突的 android-support-v4.jar ,而是将其重命名为 android-support-v4_PROJECT.jar ,消除了冲突。
如果您想知道如何在Eclipse中重命名文件,只需突出显示该文件并按F2即可。
答案 12 :(得分:0)
您只需要在每个项目上使用完全相同的android-support-v4.jar校验和。 为此,您可以在所有冲突的项目/库中复制/浏览其中一个。
没有别的事可做,干净和享受:)。
答案 13 :(得分:0)
可能是你同时打开2个项目(都使用android-support-v4.jar)。 I close 1 project and every thing ok