android - 错误 :"Configuration ' compile' 已过时并已替换为 'implementation' .", even though no ' compile' present in gradle

标签 android android-studio gradle android-gradle-plugin gradle-plugin

我有以下 gradle 文件,但找不到任何仍会发出警告“配置‘编译’已过时,已被‘实现’取代”的内容。

第一个模块 Gradle 文件:

   buildscript {
        repositories { maven { url 'https://maven.fabric.io/public' } }
        dependencies { classpath 'io.fabric.tools:gradle:1.24.1' }
    }
    repositories {
        maven { url 'https://maven.fabric.io/public' }
    }

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'io.fabric'
apply plugin: 'kotlin-kapt'

def keystorePropertiesFile = rootProject.file("keystore.properties")
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))


android {
    compileSdkVersion 27
    defaultConfig {
        multiDexEnabled true
        applicationId "com.example.something"
        minSdkVersion 19
        targetSdkVersion 27
        testInstrumentationRunner 'android.support.test.runner.AndroidJUnitRunner'
        vectorDrawables.useSupportLibrary = true
    }
    dataBinding { enabled = true }

    flavorDimensions "flavors"
    productFlavors {
        flavorBeta {
            minSdkVersion 19
            applicationId 'com.example.something'
            targetSdkVersion 27
            versionCode 1000012
            versionName "beta test"
            dimension "flavors"
        }
    }
    signingConfigs {
        config {
            keyAlias keystoreProperties['keyAlias']
            keyPassword keystoreProperties['keyPassword']
            storeFile file(keystoreProperties['storeFile'])
            storePassword keystoreProperties['storePassword']
        }
    }

    buildTypes {
        debug {
        }
        release {
            minifyEnabled true
            shrinkResources false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.config
            debuggable false
        }
    }

    sourceSets {
        main.java.srcDirs += 'src/main/kotlin'
    }
}

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

    implementation('com.crashlytics.sdk.android:crashlytics:2.8.0@aar') {
        transitive = true
    }
    // kotlin:
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
    implementation "org.jetbrains.anko:anko-common:$anko_version"
    implementation "org.jetbrains.anko:anko-commons:$anko_version"
    implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:0.21.2'

    // support libraries:    
    implementation "com.android.support:recyclerview-v7:$support_version"
    implementation "com.android.support:support-v4:$support_version"
    implementation "com.android.support:design:$support_version"
    implementation "com.android.support:appcompat-v7:$support_version"
    implementation "com.android.support:cardview-v7:$support_version"
    implementation "com.android.support:support-vector-drawable:$support_version"
    // misc:
    implementation 'com.github.d-max:spots-dialog:0.7@aar'
    implementation 'com.squareup.picasso:picasso:2.5.2'
    implementation 'com.android.support.constraint:constraint-layout:1.1.0-beta4'
    implementation 'com.backendless:backendless:4.4.0'
    implementation 'io.nlopez.smartlocation:library:3.3.2'

    // Google services:
    implementation "com.google.firebase:firebase-core:$google_services_version"
    implementation "com.google.firebase:firebase-auth:$google_services_version"
    implementation 'com.firebaseui:firebase-ui-auth:3.1.3'
    implementation "com.google.android.gms:play-services-location:$google_services_version"
    implementation "com.google.android.gms:play-services-auth:$google_services_version"
}
apply plugin: 'com.google.gms.google-services'

////////////////////和///////////////////////////////////////////////////////////////////强>

下面是项目级别的 Gradle 文件:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    ext.kotlin_version = '1.2.21'
    ext.support_version = '27.0.2'
    ext.anko_version = '0.10.3'
    ext.android_plugin_version = '3.0.1'
    ext.google_services_version = '11.8.0'

    repositories {
        google()
        jcenter()
        maven { url 'https://maven.fabric.io/public' }
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.0-beta1'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
        classpath 'com.google.gms:google-services:3.1.1'
    }
}

allprojects {
    repositories {
        google()
        jcenter()
        maven { url "https://jitpack.io" }
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

////////////////////////

已编辑:我在下面添加同步和构建的完整日志:

Executing tasks: [:app:generateFlavorBetaDebugSources]

Configuration on demand is an incubating feature.
WARNING: Configuration 'compile' is obsolete and has been replaced with 'implementation'.
It will be removed at the end of 2018
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
app: 'annotationProcessor' dependencies won't be recognized as kapt annotation processors. Please change the configuration name to 'kapt' for these artifacts: 'com.android.databinding:compiler:3.1.0-beta3'.
:app:preBuild UP-TO-DATE
:app:preFlavorBetaDebugBuild UP-TO-DATE
:app:compileFlavorBetaDebugAidl UP-TO-DATE
:app:compileFlavorBetaDebugRenderscript UP-TO-DATE
:app:checkFlavorBetaDebugManifest UP-TO-DATE
:app:generateFlavorBetaDebugBuildConfig UP-TO-DATE
:app:prepareLintJar UP-TO-DATE
:app:mainApkListPersistenceFlavorBetaDebug UP-TO-DATE
:app:mergeFlavorBetaDebugShaders UP-TO-DATE
:app:compileFlavorBetaDebugShaders UP-TO-DATE
:app:generateFlavorBetaDebugAssets UP-TO-DATE
:app:mergeFlavorBetaDebugAssets
:app:processFlavorBetaDebugGoogleServices
Parsing json file: C:\Users\some_path\app\google-services.json
:app:createFlavorBetaDebugCompatibleScreenManifests UP-TO-DATE
:app:processFlavorBetaDebugManifest UP-TO-DATE
:app:fabricGenerateResourcesFlavorBetaDebug
:app:generateFlavorBetaDebugResValues UP-TO-DATE
:app:generateFlavorBetaDebugResources UP-TO-DATE
:app:mergeFlavorBetaDebugResources
:app:splitsDiscoveryTaskFlavorBetaDebug UP-TO-DATE
:app:processFlavorBetaDebugResources
:app:generateFlavorBetaDebugSources

BUILD SUCCESSFUL in 19s
18 actionable tasks: 5 executed, 13 up-to-date

同步日志:

registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
app: 'annotationProcessor' dependencies won't be recognized as kapt annotation processors. Please change the configuration name to 'kapt' for these artifacts: 'com.android.databinding:compiler:3.1.0-beta3'.

CONFIGURE SUCCESSFUL in 22s

最佳答案

我通过更改 build.gradle 中的类路径解决了(项目:您的项目名称)

from 
  classpath 'com.google.gms:google-services:3.1.1' 
to
  classpath 'com.google.gms:google-services:3.2.0'

关于android - 错误 :"Configuration ' compile' 已过时并已替换为 'implementation' .", even though no ' compile' present in gradle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48623244/

相关文章:

gradle - Gradle实现项目引发异常

android - 产品口味本地化

java - Admob 间质性单例模式 java.lang.NullPointerException :

android-studio - 在指定位置找不到 Flutter SDK - 在 Android Studio 中

android - 从 Play 服务单体中过滤资源以使您的 APK 更小

android - 在哪里可以找到 Android SDK 中类的源代码?

android - 多个根标签错误

java - 致命异常

Android:在仅纵向应用程序中获取物理设备方向

java - 如何通过另一个fragment中的onClick调用一个fragment中的方法?