java - 无论依赖版本如何,OkHttp 都会导致 NoClassDefFoundError
问题描述
我正在尝试通过 RapidAPI 使用 API 来获取各种篮球统计数据。以下错误指向下面的 OkHttpClient 声明行。我尝试将 Kotlin-stdlib JAR 文件的多个版本添加到项目的构建路径(我正在使用 Eclipse)并在运行此测试请求时遇到相同的错误。我目前已将 Kotlin v1.4.10 添加到构建路径中,并在引用的库列表中查看错误消息中命名的类。我也在使用 OkHttp v4.91 和 Okio v2.7.0 库,如 OkHttp 更改日志中所述。另外,我没有使用 Maven 或 Gradle 构建。
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api-nba-v1.p.rapidapi.com/players/firstName/lebron")
.get()
.addHeader("x-rapidapi-key", rAPIKey)
.addHeader("x-rapidapi-host", host)
.build();
Response response = client.newCall(request).execute();
System.out.println(response.body().string());
产生此错误代码:
Exception in thread "main" java.lang.NoClassDefFoundError: kotlin/jvm/internal/markers/KMappedMarker
at okhttp3.internal.Util.<clinit>(Util.kt:63)
at okhttp3.OkHttpClient.<clinit>(OkHttpClient.kt:1073)
at CourtVisionary.main(CourtVisionary.java:39)
什么可能导致此问题?提前致谢。
编辑:修复了我自己的问题。我创建了一个新项目,复制并粘贴了我的 java 文件。添加了 JAR 文件,运行时没有出错。
解决方案
推荐阅读
- spring - spring boot transactional 不会回滚多个对象
- r - 如何在 R studio 上隐藏值或不显示值但可以使用?
- android - 通过 kotlin .. 通过 firebase 从数据库读取数据到 RecyclerView 时遇到问题
- ios - 从崩溃报告中调试函数中的崩溃
- symfony - Symfony Flex:覆盖 Twig 的路由路径功能
- .htaccess - 将 example.com 上的每个页面重定向到 example.org
- firebase - React-Native firebase 注册我如何获取用户名
- sql - PostgreSQL null out 重复结果在结果集中
- collections - ReSharper 可以生成正确比较集合成员的相等成员吗?
- ios - Swift如何使用用户ID获取用户