Gradle运行Google API示例报com.google.auth包不存在错误
问题根因
所有编译报错核心原因是项目build.gradle配置缺失Google认证库依赖项,和Cloud Shell运行环境、Create.java源码本身无关。抛出的com.google.auth.http包不存在、com.google.auth.oauth2包不存在、GoogleCredentials/HttpCredentialsAdapter类找不到的错误,均为对应依赖未被Gradle加载识别导致。
修复步骤
- 打开项目根目录下的
build.gradle文件,定位到dependencies配置块 - 保留原有Sheets API相关依赖,在块内补充两行缺失的认证相关依赖,使用经兼容性验证的稳定版本即可,参考配置如下:
dependencies { // 原有Sheets API依赖保留,示例默认依赖如下 implementation 'com.google.apis:google-api-services-sheets:v4-rev20240326-2.0.0' // 新增以下两行缺失依赖 implementation 'com.google.auth:google-auth-library-oauth2-http:1.23.0' implementation 'com.google.http-client:google-http-client-jackson2:1.43.3' }
- 保存配置文件后,在Cloud Shell的项目根路径执行命令,强制Gradle清理旧构建缓存、拉取缺失依赖:
gradle clean build --refresh-dependencies
- 依赖拉取、构建校验完成后,重新执行
gradle run即可正常通过编译、启动示例程序。
异常排查
如果完成上述配置后仍有编译错误,检查两项配置:
- 确认新增的依赖写在项目根级的
dependencies块内,不要误写到buildscript下的dependencies块中,后者仅对Gradle构建脚本本身生效,无法被业务代码引用 - 执行
gradle dependencies查看依赖树,确认google-auth-library-oauth2-http包已成功解析,不存在网络拉取失败、版本强制冲突的问题
内容的提问来源于stack exchange,提问作者TSFHacker
相关产品推荐
相关产品推荐

