IDEA 无法识别 OkHttpClient?cannot resolve symbol问题解决

最近项目中引入 OkHttp 4.12.0 后,IDEA 一直报错:

java 复制代码
cannot resolve symbol 'OkHttpClient'

虽然 Maven 已经成功下载依赖,但:

java 复制代码
import okhttp3.OkHttpClient;

依然全红,无法编译。

一、问题环境

组件 版本
IDEA IntelliJ IDEA 2021.1
Kotlin 插件 1.5.21
OkHttp 4.12.0
构建工具 Maven

并且在:

text 复制代码
Settings -> Languages & Frameworks -> Kotlin

中显示:

text 复制代码
You have the latest version of the plugin installed.

说明当前 IDEA 已无法升级 Kotlin 插件。

二、问题原因

核心原因:

OkHttp 4.10+ 强制要求 Kotlin 1.8+

但 IDEA 2021.1 最高只支持:

text 复制代码
Kotlin 1.5.21

因此会导致:

  • IDEA 无法解析 OkHttp 类
  • OkHttpClient 无法导入
  • 代码全部标红

这并不是 Maven 下载失败,而是:

text 复制代码
IDEA版本过旧 → Kotlin版本过低 → 与OkHttp不兼容

三、解决方案

方案1:升级 IDEA(推荐)

升级到:

text 复制代码
IDEA 2023.1+

即可正常支持:

text 复制代码
Kotlin 1.8+
OkHttp 4.12.0

重新导入 Maven 项目后问题会自动消失。

方案2:降级 OkHttp(最快)

如果暂时不升级 IDEA,直接将 OkHttp 降级:

xml 复制代码
<dependency>
    <groupId>com.squareup.okhttp3</groupId>
    <artifactId>okhttp</artifactId>
    <version>4.9.3</version>
</dependency>

4.9.3 是最后一个兼容 Kotlin 1.5.x 的稳定版本。

修改后重新:

text 复制代码
Maven Reload

即可正常导入:

java 复制代码
import okhttp3.OkHttpClient;
相关推荐
吴声子夜歌1 小时前
Java——标准序列化机制
java·序列化
hughnz1 小时前
下一代地热能的技术障碍
java·大数据·数据库
Devin~Y1 小时前
大厂Java面试实录:Spring Boot + JVM + Redis/Kafka + 微服务治理 + Spring AI/RAG 一条龙
java·jvm·spring boot·redis·spring cloud·kafka·openfeign
有梦想的小何1 小时前
Cursor AI 编程实战(篇三):Domain、Infrastructure 与策略模式
java·ai编程·策略模式
西凉的悲伤1 小时前
java通过url获取 jpg、png、pdf 文件格式
java
SunnyDays10111 小时前
Java 实现 PDF 附件的添加与删除:四种实用方法
java·pdf·附件
phltxy1 小时前
Redis 持久化机制
java·redis·git
Gerardisite1 小时前
企业微信客户管理系统实战:标签、分层与自动化流程搭建
java·python·机器人·自动化·企业微信
ch.ju1 小时前
Java程序设计(第3版)第三章——数组的定义方式
java·开发语言