Android Studio build.gradle warning message
AndroidAndroid StudioAndroid Gradle-PluginAndroid Problem Overview
After i have successfully updated to Android Studio 3.1 Canary 9 i am getting warning message as
Warning:Configuration 'compile' is obsolete and has been replaced with 'implementation'.
It will be removed at the end of 2018
I know this warning will not cause any problem in my project at least for now. But i want to remove it totally so that there will be no problem in future at all. But after reviewing my build.gradle file i cannot find any line of code which has invoked this warning at all.
Here is my build.gradle file
apply plugin: 'com.android.application'
android {
compileSdkVersion 27
defaultConfig {
applicationId "app.project.virtualdiary"
minSdkVersion 21
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation 'com.google.firebase:firebase-auth:11.8.0'
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:27.0.2'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
implementation 'com.android.support:support-v4:27.0.2'
implementation 'com.android.support:support-vector-drawable:27.0.2'
}
apply plugin: 'com.google.gms.google-services'
Android Solutions
Solution 1 - Android
The problem lies in apply plugin: 'com.google.gms.google-services'
The Google Services plugin is adding a dependency on behalf of you. Hopefully they fix it in the future.
Solution 2 - Android
I have one same Warning caused to com.google.gms:google-services.
The solution is to upgrade classpath com.google.gms:google-services to classpath 'com.google.gms:google-services:3.2.0' in file in build.gradle Project:
buildscript {
repositories {
jcenter()
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.1.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
classpath 'com.google.gms:google-services:3.2.0'
}
}
allprojects {
repositories {
jcenter()
google()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
In Android Studio verion 3.1 dependencies complie word is replaced to implementation
dependencies with Warning in android studio 3.1
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:27.1.0'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
}
dependencies OK in android studio 3.1
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:27.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
}
Gradel generate by Android Studio 3.1 for new project.
Visit https://docs.gradle.org/current/userguide/dependency_management_for_java_projects.html
For details https://docs.gradle.org/current/userguide/declaring_dependencies.html
Good luck
Solution 3 - Android
I agree with Niklas. I changed the compile
to implementation
, but the warning was gone only after the change in the build.gradle(Project: .....)
before:
dependencies {
classpath 'com.android.tools.build:gradle:3.1.0'
classpath 'com.google.gms:google-services:3.0.0'
}
after:
dependencies {
classpath 'com.android.tools.build:gradle:3.1.0'
classpath 'com.google.gms:google-services:3.2.0'
}
Solution 4 - Android
first select :
- Build
- Clean Project then Build
- make Project in Android studio
Solution 5 - Android
When AndroidManifest.xml package name was different from build.gradle package name i get this error
> Configuration 'compile' is obsolete and has been replaced with > 'implementation'. It will be removed at the end of 2018
Solution 6 - Android
Change the "compile" to "implementation". this problem will be fixed! it works on my computer.