Android gradle exclude无法按预期工作
我正在开发一个React本地项目,并且正在使用第三方库。在该库的build.gradle文件中,play services location的版本定义如下:(有关整个build.gradle文件,请参阅) 在我的项目的build.gradle文件中,我有以下内容:Android gradle exclude无法按预期工作,android,react-native,gradle,Android,React Native,Gradle,我正在开发一个React本地项目,并且正在使用第三方库。在该库的build.gradle文件中,play services location的版本定义如下:(有关整个build.gradle文件,请参阅) 在我的项目的build.gradle文件中,我有以下内容: buildscript { ext { ... googlePlayServicesVersion = "16.1.0" } } 在我的项目的app/build.g
buildscript {
ext {
...
googlePlayServicesVersion = "16.1.0"
}
}
在我的项目的app/build.gradle文件中:
dependencies {
implementation(project(':react-native-geolocation-service')) {
exclude group: 'com.google.android.gms', module: 'play-services-location'
}
implementation ('com.google.android.gms:play-services-location:16.0.0') {
force = true
}
}
尽管我已在gradle文件中指定使用16.0.0版作为play services位置,但在运行gradlew clean
然后gradlew build
之后,仍然会出现以下错误:
任务“:反应本机地理位置服务:GeneratedBugrFile”的执行失败
无法解析配置“”的所有文件:react native geolocation service:debugRuntimeClasspath“”
找不到com.google.android.gms:play services位置:16.1.0
为什么gradle仍在寻找版本16.1.0而不是版本16.0.0?如果您要查看的是 2019年6月17日 释放是
com.google.android.gms:play-services-location:17.0.0
2018年10月2日
释放是
com.google.android.gms:play-services-location:16.0.0
因此,对于位置没有发布版本版本16.1.0是的,我知道位置没有版本16.1.0,因此我尝试在build.gradle文件中使用exclude和force=true强制16.0.0。但由于一些我无法理解的原因,gradle仍在寻找16.1.0
com.google.android.gms:play-services-location:16.0.0