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;
相关推荐
吴声子夜歌8 小时前
Java面试——ElasticSearch原理及应用
java·面试·es
lhldsg8 小时前
家政派单系统开发实战:从需求分析到智能调度全流程指南
java·junit·小程序·uni-app·需求分析
吴声子夜歌8 小时前
Java面试——Spring原理及应用(一)
java·spring·面试
灰阳阳8 小时前
Docker-数据卷命令解析
java·docker·eureka
晓晓_za8986689 小时前
开源 GEO 优化源码二次开发:贴牌改造与业务模块扩展实践
java·运维·服务器·开发语言·性能优化·开源
别慌,让我先缓缓9 小时前
Java入门:从编写到运行第一步
java
liangshanbo12159 小时前
Nginx 进程管理命令深度面试题解析
java·nginx·面试
Mr. zhihao9 小时前
死锁排查实战:JVM 唯一会“自动报案“的问题(场景 B5)
java·jvm·gc
LINgZone29 小时前
后端Java编码规范
java·开发语言
weixin_3993806910 小时前
TongWeb7.0.4.9M11一键安装脚本(by sy)
java·spring