2016-10-31 7 views
1

総計方法プロジェクトでのカウントは、155,323です。私が使っているライブラリはたくさんあります。 まず、このようなプレイサービスを利用していました。Gradle Conflictsを削除するには

compile 'com.google.android.gms:play-services:9.0.1' 

私はGoogleVR:関連するクラスでClassDefNotFoundエラーを取得しました。

次に、play-servicesの一般ライブラリを削除し、特定のものを追加しました。エラーはなくなりました。私は幸せで驚いていました。

残念ながら、エラーは再び発生しました。次のライブラリを追加した直後に、自分のクラスの1つにClassDefNotFoundが追加されています。

repositories { 
    maven { 
     url "https://s3.amazonaws.com/repo.commonsware.com" 
    } 
} 

dependencies { 
    compile 'com.commonsware.cwac:merge:1.1.+' 
} 

java.lang.NoClassDefFoundError: Failed resolution of: Lcom/video_lib/android/utils/NetworkClient;

私はcommonswareライブラリを削除した場合、それは正常に動作しますが、commonswareライブラリは、他のいくつかのAPIのために不可欠であり、私はそれを使用する必要があります。

gradle conflictが原因の可能性があります。どのようにしてgradle-conflictを特定して削除するかを教えてください。

+0

これは、commonswareのlibにgoogleの再生ライブラリを含める可能性があることを意味しています –

答えて

1

依存関係ツリーを表示するには、gradle app:dependenciesを実行してください。同じファミリの複数のバージョンのライブラリおよび/または複数のバージョンのライブラリを探します。その後、forceを使用して1つだけを残します。

+0

ありがとう、私は 'gradle app:dependencies'に取り組んでいません。親切に私を案内したり、 'gradle app:dependencies'を実行する方法を知ることができる場所からリンクを共有したり、ライブラリを強制的に削除するためにbuild.gradeに何かを書く必要があります。 – Kirmani88

+0

@ Kirmani88 [Gradle userguide dependency management]セクション(https://docs.gradle.org/current/userguide/dependency_management.html)から開始できます。 [24.8.2。依存関係解決ルールの使用](https://docs.gradle.org/current/userguide/dependency_management.html#sec:forcing_modules) [推移的な依存関係を除外](https://docs.gradle.org/current/userguide/dependency_management.html#sub:exclude_transitive_dependencies)を参照してください。 – Ivan

+1

@ Kirmani88のように、gradleラッパースクリプトを使用することができます。アンドロイドスタジオは、http://stackoverflow.com/questions/24398041/build-android-studio-app-via-jpn.htmlに記載されているように、プロジェクトのルートに作成する必要があります。コマンドライン – Ivan

0

ジャスト方法数が64,000リミット 使用に
コンパイル「com.android.support:multidex:1.0.0」を超えたマルチDEX問題

のためのケースであなたのGradleファイル でmultidexサポートを有効にしますmultiDexEnabled true

nマニフェストでは、MultidexサポートライブラリのMultiDexApplicationクラスをアプリケーション要素に追加します。

関連する問題