引入json-simple依赖后仍报java.lang.ClassNotFoundException求助
Maven引入json-simple依赖后仍报ClassNotFoundException: org.json.simple.parser.JSONParser
我已在Maven的pom.xml中引入json-simple依赖:
<dependencies> <dependency> <groupId>com.googlecode.json-simple</groupId> <artifactId>json-simple</artifactId> <version>1.1.1</version> </dependency> </dependencies>
但运行代码时持续出现以下错误:
Caused by: java.lang.ClassNotFoundException: org.json.simple.parser.JSONParser at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520) ... 3 more
我的代码如下:
JSONObject testLatest = new JSONObject(Files.readString(Paths.get("test-latest.json"))); JSONObject currentServer = new JSONObject(Files.readString(Paths.get("current-server.json"))); String latestStability = testLatest.getJSONObject("response").getString("stability"); String latestMD5 = testLatest.getJSONObject("response").getString("md5"); String currentMD5 = currentServer.getJSONObject("response").getString("md5"); if (latestStability.equals("stable") && !latestMD5.equals(currentMD5)) { replaceCurrentServer(true); return true; }
以下是我IntelliJ中的模块设置截图:
解决建议:
- 执行
mvn clean install命令,强制刷新Maven依赖,确保依赖包被正确下载到本地仓库 - 检查IntelliJ模块设置:确认
json-simple-1.1.1.jar已添加到模块的Libraries中(从截图看当前Libraries列表为空,这大概率是问题根源)。可通过右键模块 →Open Module Settings→Libraries→ 点击+号添加Maven依赖,或点击IntelliJ右上角Maven面板的Reload All Maven Projects按钮刷新 - 确认代码中
JSONObject的导入路径为org.json.simple.JSONObject,避免和其他JSON库(如org.json.JSONObject)的类混淆 - 检查运行配置:在Run/Debug Configurations中,确保
Classpath包含Maven依赖库,必要时勾选Include dependencies with "Provided" scope - 排查依赖冲突:执行
mvn dependency:tree命令,查看是否有其他依赖排除了json-simple的相关类,若有则在pom.xml中通过<exclusions>标签排除冲突依赖
内容的提问来源于stack exchange,提问作者CaptainBear
相关产品推荐
相关产品推荐

