jarの不一致依存関係リストに2つのバージョンのandroid-support-v4.jarが見つかりました


130

Androidアプリの2つのバージョン(無料/有料)を作成しようとしています。両方に共通のファイルを含む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

これを解決する方法に関するアイデアはありますか?私は成功への道を築いてきました。


私はそのような状況で機能する非常に単純な解決策を見つけました、以下の私の答えをチェックしてください
gprathour

回答:


177

これを解決する方法に関するアイデアはありますか?

1つ削除してください。

私は成功への道を築いてきました。

ステップ1:すべてを元に戻します。ビルドパスをいじっている場合、Eclipse用のA16プラグインのR16以降のバージョンでは、間違っています。

ステップ#2:JARのこれら2つのバージョンのいずれかを選択するか、SDKインストールの「エクストラ」領域からバージョンを選択します。

ステップ#3:適切なJARをに配置しApp Libraryます。

ステップ#4:からApp FreeJARを取得するため、から削除しApp Libraryます。

どちらの場所(App FreeApp Library)にも同じ実際のJARファイルがあってもかまいませんが、理由はありません。


1
@Necronet:すべてが同じJARを使用するようにします。たとえば、最新のものを各プロジェクトにコピーします。
CommonsWare 2013年

@CommonsWare:どれが最新かを知る方法は?
Mehul Joisar 2013

2
@MehulJoisar:JARの作成者次第です。の場合android-support-v4.jar、最新のものはSDKインストール内のものです。
CommonsWare 2013

5
@MehulJoisar:私はそれに答えることはできません。私は通常android-support-v4.jar、SDKから最新のものを取り出し、それをすべてのライブラリプロジェクトにコピーします(さらに、SDKから1つを削除します)。
CommonsWare 2013

1
私はこの問題を抱えていましたが、他のいくつかの(より難しい)Eclipse / Androidの問題と同様に、完全に突然に見えたようです。この答えは効果を修正しますが、明らかに原因は修正しません。
Joe Lapp、2014年

24
  1. App Freeからandroid-support-v4.jarを削除します
  2. App LibraryからApp Freeに同じファイルを追加する

@Lee Chun HoeがMAC OSでこのパスに移動する方法を教えてくれませんか。android-support-v4.jarを削除したい。
Rakesh

@Rakesh Eclipse Package Explorerでプロジェクトを展開し、libsフォルダーの下で、android-support-v4.jarファイルを削除します。
Lee Chun Hoe

12

上記の解決策は主に問題を解決します。これらのソリューションを使用した後も問題が解決しない。その後

プロジェクトフォルダに移動-> libs->し、「android-support-v4.jar」を削除します

それが私の問題を解決したので、それがあなたの問題を解決することを願っています。


11

複数のライブラリプロジェクトがあり、android-support-v4.jarそれらのlibsパスとビルドパスがあり、プロジェクトがそれらの両方に依存している場合があります。たとえば、私の場合、ワークスペースに次のライブラリプロジェクトがあるとします。

  • libfacebook
  • libsherlockactionbar

これらのプロジェクトは両方とも独立していて、私のproject.propertiesように見えます、

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

プロジェクトをビルドすると、同じファイルの2つのコピーへの参照の重複があるjarの不一致の問題が発生します。この問題を解決するために私がやったことは、ちょっとしたトリックです。私は名前の新しいライブラリプロジェクトを作成libcommons他のすべての親として、ライブラリを含め、私のワークスペース内のプロジェクト、libfacebookおよびをlibsherlockactionbar。次に、他のすべてのプロジェクトからサポートライブラリを削除し、libcommonslibsフォルダー内にコピーを1つだけ残しました。次にlibcommons他のすべてライブラリプロジェクトへの参照として追加しました。ワークスペースをクリーンアップすると、すべてが魅力のように機能します。


8

これは、ファイルを削除して追加するよりもエレガントな修正です!

あなたはただする必要があります:

  1. プロジェクトApp Freeを右クリックします
  2. [Androidツール]> [サポートライブラリの追加]に移動します
  3. 権限を承認し、ライブラリを更新させます
  4. プロジェクトApp Libraryに対してこのプロセスを繰り返します

Androidサポートライブラリが同期されます(:


ありがとう-これで私の問題は解決しました。私はBaseGameUtilsを追加する必要があり、このエラーが発生しました:)
neowhoru

@neowhoru、問題ありません!共有にうれしい〜!
cokeby190

1
@MuhammedRefaatを助けてくれてうれしい!(:
cokeby190 2015

7

非常にシンプルなソリューション

私の場合、非常にシンプルなソリューションが機能しました。同じ(android-support-v4.jar)jarファイルをすべてのプロジェクトにコピーするだけです。これ以上の衝突はありません。

1任意の1つのプロジェクトのlibsフォルダーからjarファイルandroid-support-v4.jarをコピーします。

2すでに存在する2番目のプロジェクトのlibsフォルダーからjarファイルandroid-support-v4.jarを削除します。

3最初のプロジェクトの新しくコピーしたjarファイルを2番目のプロジェクトのlibsフォルダーに貼り付けます。

jarの不一致の問題は、今ごろ解決されます。


5

ライブラリをプロジェクトの1つから別のプロジェクトにコピーするだけです。タイムスタンプが両方で同じである必要があるかもしれません。


4

解決:

  1. 「無料」プロジェクト> Androidツール>サポートライブラリの追加を右クリックします。
  2. 「有料」プロジェクトでも同じことを行います。
  3. すべてのプロジェクトをクリーンアップ

2

関係のないプロジェクトが開いているかどうかを確認してください。これは、私にとってそうでした。JARファイルの1つが、作業していない別のプロジェクトに関連しているように思われたため、そのプロジェクトを閉じて、私が取り組んでいるプロジェクトのビルドで、もう問題はありませんでした!これが誰かを助けることを願っています!



1

まあ..それは私のために働きます:

に行く

プロジェクトフォルダ> libs

次に、「android-support-v4.jar」を削除します

その後

プロジェクト>クリーン

それが動作します!


1

私はこの問題を抱えていましたが、競合するandroid-support-v4.jarを削除する代わりに、名前をandroid-support-v4_PROJECT.jarに変更しました。これにより、競合が解消されました。

Eclipseでファイルの名前を変更する方法を知りたい場合は、ファイルを強調表示してF2キーを押すだけです。


0

各プロジェクトでまったく同じandroid-support-v4.jarチェックサムが必要です。このため、競合するすべてのプロジェクト/ライブラリでそれらの1つをコピー/貼り付けできます。

他に何もしない、きれいにして楽しむ:)


0

あなたは2つのプロジェクトを同時に開くかもしれません(どちらもandroid-support-v4.jarを使用しています)。 I close 1 project and every thing ok

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.