2017-09-18 1 views
1

私のAndroidライブラリプロジェクトで、gradlew lintを実行中に問題が発生しました。私はgradle wrapperバージョンとビルドツールバージョンをアップグレードしました。Android:gradlew lintエラー "Incompatible Gradle Versions"

以前はgradlewバージョン1.3.0とbuildToolsVersion23.0.0を使用していましたが、実行中に問題はありませんでしたlint

私gradlewバージョンとビルドツールのバージョンをアップグレードした後、私は「gradlew糸くず

を実行している間、私は私のbuild.gradle(アプリに続いてgradlewバージョン

classpath 'com.android.tools.build:gradle:2.3.3' 

を使用しています。このエラーを持つ開始)私は

compileSdkVersion 25 
buildToolsVersion '25.0.0' 

マイプレイ・サービスのバージョンが

であるを使用しています糸くずの結果から
compile 'com.google.android.gms:play-services:8.1.0' 

これは私はこれが問題であることを直感がしかし、私はアイデアを持っていないプレイサービスとAndroidビルドツールのバージョンによって引き起こされてい

Incompatible Gradle Versions 
../../build.gradle: All com.android.support libraries must use 
the exact same version specification 
(mixing versions can lead to runtime crashes). 
Found versions 26.0.0-alpha1, 22.2.0. 
Examples include com.android.support:support-compat:26.0.0-alpha1 
and com.android.support:appcompat-v7:22.2.0 

ouputを誤りでありますそれを修正する方法。今

私は実行 './gradlew -q依存関係のアプリ:依存関係はをコンパイル--configuration'

私がプレイサービスのセクションから

+--- com.google.android.gms:play-services:8.1.0 
| +--- com.google.android.gms:play-services-ads:8.1.0 
| | +--- com.google.android.gms:play-services-basement:8.1.0 
| | | \--- com.android.support:support-v4:22.2.0 -> 26.0.0-alpha1 
| | |   +--- com.android.support:support-compat:26.0.0-alpha1 
| | |   | \--- com.android.support:support-annotations:26.0.0-alpha1 -> 23.0.1 
| | |   +--- com.android.support:support-media-compat:26.0.0-alpha1 
| | |   | +--- com.android.support:support-annotations:26.0.0-alpha1 -> 23.0.1 
| | |   | \--- com.android.support:support-compat:26.0.0-alpha1 (*) 
| | |   +--- com.android.support:support-core-utils:26.0.0-alpha1 
| | |   | +--- com.android.support:support-annotations:26.0.0-alpha1 -> 23.0.1 
| | |   | \--- com.android.support:support-compat:26.0.0-alpha1 (*) 
| | |   +--- com.android.support:support-core-ui:26.0.0-alpha1 
| | |   | +--- com.android.support:support-annotations:26.0.0-alpha1 -> 23.0.1 
| | |   | \--- com.android.support:support-compat:26.0.0-alpha1 (*) 
| | |   \--- com.android.support:support-fragment:26.0.0-alpha1 
| | |    +--- com.android.support:support-compat:26.0.0-alpha1 (*) 
| | |    +--- com.android.support:support-core-ui:26.0.0-alpha1 (*) 
| | |    \--- com.android.support:support-core-utils:26.0.0-alpha1 (*) 

注これを取得する:私だけ表示をこのようなプレイサービスの部分は私がLint Resultsから見たものであり、これが有用な唯一の部分だと私は考えています。

buildToolsVersion 25とcompiledSdkVersion 25で使用するプレイサービスのバージョンを教えてもらえますか?

ありがとうございます!

アプリのbuild.gradle

import com.android.build.gradle.LibraryPlugin 
import org.aspectj.bridge.IMessage 
import org.aspectj.bridge.MessageHandler 
import org.aspectj.tools.ajc.Main 

apply plugin: 'com.android.library' 


android { 
    packagingOptions { 
    exclude 'META-INF/LICENSE' 
    exclude 'META-INF/LICENSE.txt' 
    exclude 'META-INF/NOTICE' 
    exclude 'META-INF/NOTICE.txt' 
    } 

    compileSdkVersion 25 
    buildToolsVersion '25.0.0' 

    defaultConfig { 
    minSdkVersion 19 
    targetSdkVersion 25 
    multiDexEnabled true 
    versionCode 1 
    versionName "1.0" 
    } 
    buildTypes { 
    debug { 
     buildConfigField "String", "APP_VERSION", "\"1.0-SNAPSHOT\"" 
    } 
    release { 
     buildConfigField "String", "APP_VERSION", "\"1.0-SNAPSHOT\"" 

     minifyEnabled true 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro', 'proguard-rules-app.pro' 
    } 
    } 

    configurations.all { 
    resolutionStrategy { 
     force 'com.android.support:support-annotations:23.0.1' 
    } 
    } 

    sourceSets { 
    defaultConfig { 
     testInstrumentationRunner 'android.support.test.runner.AndroidJUnitRunner' 
    } 
    } 

} 

buildscript { 
    repositories { 
    jcenter() 
    } 
    dependencies { 
    classpath 'com.neenbedankt.gradle.plugins:android-apt:1.4' 
    classpath 'org.aspectj:aspectjtools:1.8.9' 
    } 
} 

repositories { 
    maven { 
    url 'https://download.01.org/crosswalk/releases/crosswalk/android/maven2' 
    } 
    maven { 
    url "https://maven.java.net/content/groups/public/" 
    } 
} 


apply plugin: 'com.neenbedankt.android-apt' 
def dbflow_version = "3.1.1" 


dependencies { 
    compile fileTree(include: ['*.jar'], dir: 'libs') 

    compile 'com.squareup.okhttp3:okhttp:3.0.1' 
    compile 'com.squareup.okhttp3:okhttp-urlconnection:3.0.1' 

    apt "com.github.Raizlabs.DBFlow:dbflow-processor:${dbflow_version}" 
    compile "com.github.Raizlabs.DBFlow:dbflow-core:${dbflow_version}" 
    compile "com.github.Raizlabs.DBFlow:dbflow:${dbflow_version}" 
    compile 'com.github.Raizlabs.DBFlow:dbflow-sqlcipher:3[email protected]' 
    compile 'net.zetetic:android-database-sqlcipher:3.5.1' 
    compile 'org.xerial:sqlite-jdbc:3.7.2' 

    compile 'commons-io:commons-io:2.4' 
    compile 'commons-collections:commons-collections:3.2.1' 

    compile 'com.google.android.gms:play-services:8.1.0' 
    compile 'com.google.code.gson:gson:2.2.4' 
    compile 'com.google.guava:guava:18.0' 
    compile 'com.scottyab:aescrypt:0.0.1' 

    compile([group: 'com.fasterxml.jackson.core', name: 'jackson-core', version: '2.3.2'], 
      [group: 'com.fasterxml.jackson.core', name: 'jackson-annotations', version: '2.3.2'], 
      [group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.3.2']) 

    compile 'org.aspectj:aspectjrt:1.8.9' 
    compile 'org.apache.commons:commons-lang3:3.4' 

    compile 'org.slf4j:slf4j-api:1.7.21' 
    compile('com.github.tony19:logback-android-classic:1.1.1-6') { 
    exclude group: 'com.google.android', module: 'android' 
    } 
    compile 'com.sun.mail:android-mail:1.5.5' 
    compile 'com.sun.mail:android-activation:1.5.5' 

    compile 'org.xwalk:xwalk_core_library:20.50.533.12' 


    testCompile 'junit:junit:4.12' 
    testCompile group: 'com.squareup.okhttp3', name: 'mockwebserver', version: '3.9.0' 
    testCompile 'org.powermock:powermock:1.6.5' 
    testCompile 'org.powermock:powermock-module-junit4:1.6.5' 

    testCompile 'org.powermock:powermock-api-mockito:1.6.5' 
    testCompile 'org.robolectric:robolectric:3.0' 
    androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.1' 



} 
+0

あなたの質問にあなたのアプリケーション 'build.gradle'を含めてください。 –

+0

ここにあなたのBuild.gradleを投稿してください – UltimateDevil

+0

app build.gradleで質問を更新 – Aaron

答えて

1

見つかりバージョン26.0.0 - アルファ1、22.2.0。 の例では、サポートライブラリの異なるバージョンのライブラリを使用しているcom.android.support:support-compat:26.0.0-alpha1 とcom.android.support:appcompat-v7:22.2.0

を含めます
あなたはcom.android.support:appcompat-v7:22.2.0com.android.support:support-compat:26.0.0-alpha1を使用しています。

最新のバージョンへの更新は、サポートライブラリv.26とgoogle play services libraries v.11.2.0を使用してください。

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

またsupport libraries v26google play services v.11.2.0がGoogle Mavenのレポurl "https://maven.google.com"compileSdkVersion 26を必要とすることに注意してください。

あなたが使用することができますcom.android.supportライブラリ除外したい場合:あなたが見ることができるように、Googleはサービスを再生

compile ('com.google.android.gms:play-services:11.2.2'){ 
    exclude group: 'com.android.support' 
} 
+0

OPが最新のGradleを持っていると主張すると、 'google()'リポジトリもうまく動作します –

+0

@ cricket_007はい。あなたはgradle v.4とgradle plugin 3.x +が必要です。 –

+0

私はそれを最終的に理解しましたが、これは私を助けましたが、グループ: 'com.android.support'を私のプレイサービスの依存関係から除外しなければなりませんでした。 – Aaron

0

はあなたがサポート-V4

+--- com.google.android.gms:play-services:8.1.0 
| +--- com.google.android.gms:play-services-ads:8.1.0 
| | +--- com.google.android.gms:play-services- basement:8.1.0 
| | | \--- com.android.support:support-v4:22.2.0 
のために欲しいものよりも古いですバージョンを選んでいます

buildToolsVersion 25とcompiledSdkVersion 25で使用するプレイサービスのバージョンを教えてください。

これらの数字はそれほど重要ではありません。しかし、理想的には、常に最新のコンパイルSDK(リソースやメソッドの非推奨と削除に応じて)とビルドツールが必要です。少なくとも、私はそのアプローチには問題がなかった。

Google Playについては、go read the documentationです。具体的には実際に必要なものを選択的にコンパイルするセクション

関連する問題