我成功更新到Android Studio 3.1 Canary 9后,我收到警告消息
Warning:Configuration 'compile' is obsolete and has been replaced with 'implementation'.
It will be removed at the end of 2018
我知道这个警告至少在目前我的项目不会造成任何问题。但我想完全删除它,以便将来不会有任何问题。但在查看我的build.gradle文件之后,我找不到任何调用此警告的代码行。
这是我的build.gradle文件
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'
答案 0 :(得分:74)
问题在于{{1}}
Google服务插件代表您添加了依赖项。希望他们将来能解决这个问题。
答案 1 :(得分:42)
我对com.google.gms:google-services有同样的警告。
解决方案是将classpath com.google.gms:google-services升级到classpath'com.google.gms:google-services:3.2.0'在build.gradle文件中的项目:
int(*pA)[COL][HIT] = A;
printf("Sum Of Array A : %d",ADD((*pA)[COL][HIT]);
system("pause");
}
int ADD(int(*pA)[COL][HIT])
{
int sum = 0;
for ((*pA)[COL][HIT] = 0; (*pA)[COL][HIT] < 10 * 7 * 6; (*pA)[COL][HIT]++)
{
sum = sum + (*pA)[COL][HIT];
}
return sum;
}
在Android Studio版本3.1依赖项中,complie word被替换为 实施
android studio 3.1中依赖于警告
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
}
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'
}
通过Android Studio 3.1为新项目生成Gradel。
访问https://docs.gradle.org/current/userguide/dependency_management_for_java_projects.html
详细信息https://docs.gradle.org/current/userguide/declaring_dependencies.html
祝你好运答案 2 :(得分:6)
我同意尼克拉斯的观点。我将compile
更改为implementation
,但警告仅在 build.gradle(Project: .....)
<强>之前:强>
dependencies {
classpath 'com.android.tools.build:gradle:3.1.0'
classpath 'com.google.gms:google-services:3.0.0'
}
<强>后:强>
dependencies {
classpath 'com.android.tools.build:gradle:3.1.0'
classpath 'com.google.gms:google-services:3.2.0'
}
答案 3 :(得分:5)
首先选择:
答案 4 :(得分:-2)
当AndroidManifest.xml软件包名称与build.gradle软件包名称不同时,我收到此错误
配置'compile'已过时,已被替换为 “执行”。它将在2018年底删除
答案 5 :(得分:-4)
更改&#34;编译&#34;到&#34;实施&#34;。这个问题将得到解决!它适用于我的电脑。