使用google-api-client 2.0.0调用Gmail接口的兼容性问题排查
问题根源确认与解决方案
你找的问题根源完全正确。
你使用的google-api-services-gmail v1-rev20220404-2.0.0库中,Gmail.java的静态代码块里的版本校验逻辑存在局限性:它硬要求google-api-client的主版本号必须为1,且次版本号≥15。而你当前使用的google-api-client 2.0.0主版本号是2,即便版本更新,也会因为不满足主版本等于1的条件,触发IllegalStateException异常。
可行解决方案
- 降级
google-api-client到1.x系列的最新稳定版本(例如1.35.0),这样就能通过版本校验,正常构建Gmail服务。 - 升级
google-api-services-gmail到支持google-api-client 2.x的后续版本,这类版本的校验逻辑已更新,允许主版本为2的google-api-client。
内容的提问来源于stack exchange,提问作者Giovanni Grana
相关产品推荐
相关产品推荐

