java,okhttp,我得到这些异常:java.lang.NoClassDefFoundError:okio/Buffer,没有模块

问题描述 投票:0回答:1

我使用java 17和okhttp-4.9.3。电话是:

OkHttpClient httpClient = new OkHttpClient.Builder().build();

运行程序,我得到异常:

Exception in thread "ReadStationsThread" java.lang.NoClassDefFoundError: okio/Buffer
at [email protected]/okhttp3.ResponseBody$Companion.create(ResponseBody.kt:248)
at [email protected]/okhttp3.ResponseBody$Companion.create$default(ResponseBody.kt:247)
at o[email protected]/okhttp3.internal.Util.\<clinit\>(Util.kt:65)

程序可以无错误地构建。我将 gradle 与这些依赖项一起使用:

implementation ':okhttp-4.9.3'
implementation ':okio-3.3.0'
implementation ':okio-jvm-3.3.0'
implementation ':kotlin-stdlib-1.8.21'

在 module-info.java 中是这些:

requires okhttp3; 
requires okio; 
requires kotlin.stdlib;

运行程序,调用异常。当我删除 mdule-info.java 文件并在没有模块的情况下运行该程序时,它可以正常工作。知道模块信息遗漏了什么吗?

java gradle module okhttp
1个回答
0
投票

要求赏金后不久,我自己做了......

对我有用的是这个版本组合:

  • okio-3.5.0
  • okio-jvm-3.5.0
  • okhttp-4.11.0
  • kotlin-stdlib-1.6.20
© www.soinside.com 2019 - 2024. All rights reserved.