升级google-services至3.2.0后出现Gradle警告:找不到google-services.json
解决google-services 3.2.0版本的"找不到google-services.json"警告问题
我之前也碰到过一模一样的情况!升级到google-services插件3.2.0后,Gradle抛出一堆带nullnull路径的警告,但实际上控制台明确显示文件已经从正确路径解析完成,而且项目根本没用到产品风味。别担心,这是插件版本的一个已知小bug,不影响项目正常构建和运行,不过如果看着警告闹心,可以试试下面的解决办法:
- 直接忽略警告:既然文件已经被正确识别,项目功能不受影响,完全可以暂时无视这些警告,官方后续版本应该会修复这个路径拼接的问题。
- 降级回3.1.1版本:如果实在不想看到这些警告,先把项目根目录
build.gradle里的插件版本改回classpath 'com.google.gms:google-services:3.1.1',等插件更新到更稳定的版本后再升级。 - 添加空风味配置(临时hack):在app模块的
build.gradle里添加一个空的风味维度和默认风味,让插件的路径逻辑正常工作:
android { // ...其他配置 flavorDimensions "default" productFlavors { defaultFlavor { dimension "default" } } }
添加后,插件就不会再生成那些包含nullnull的奇怪搜索路径,警告自然就消失了。
问题原因
google-services 3.2.0版本在处理没有配置产品风味的项目时,内部逻辑错误地将未定义的风味值当成了null,拼接搜索路径时就出现了src/nullnull/debug这类异常路径,但插件核心的文件查找逻辑还是正常的,会去默认的src/debug、src/main等路径读取文件,所以你会看到控制台显示文件已正确解析。
内容的提问来源于stack exchange,提问作者Stephan Eichinger
相关产品推荐
相关产品推荐

