java.lang.ClassNotFoundException: org.apache.commons.collections.map.ListOrderedMap解决方法

本文介绍了一个关于Java中使用JSON库时遇到的NoClassDefFoundError异常,特别是当缺少或版本不正确的commons-collections-3.2.jar导致org/apache/commons/collections/map/ListOrderedMap异常时的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Exception in thread "main" <a href="http://lib.youkuaiyun.com/base/17" class='replace_word' title="Java EE知识库" target='_blank' style='color:#df3434; font-weight:bold;'>Java</a>.lang.NoClassDefFoundError: org/apache/commons/collections/map/ListOrderedMap  
at net.sf.json.JSONObject.<init>(JSONObject.java:1529)  
at net.sf.json.util.CycleDetectionStrategy.<clinit>(CycleDetectionStrategy.java:37)  
at net.sf.json.JsonConfig.<clinit>(JsonConfig.java:58)  
at net.sf.json.JSONArray.fromObject(JSONArray.java:127)  
at JsonTest.main(JsonTest.java:8)  
Caused by: java.lang.ClassNotFoundException: org.apache.commons.collections.map.ListOrderedMap  
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)  
at java.security.AccessController.doPrivileged(Native Method)  
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)  
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)  
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)  
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)  
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)  
... 5 more  

后来查了一下发现是包有错,使用json常用到的包有以下六个。

commons-logging-1.0.4.jar  
commons-lang-2.3.jar  
commons-collections-3.2.jar  
commons-beanutils-1.7.0.jar  
json-lib-2.2.1-jdk15.jar  
ezmorph-1.0.4.jar  

另外如果commons-collections-3.2.jar没有或版本不对的话会出现

org/apache/commons/collections/map/ListOrderedMap这个异常。

报错Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties 23/06/01 20:24:22 INFO SparkContext: Running Spark version 2.0.0 Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/collections/map/UnmodifiableMap at org.apache.hadoop.conf.Configuration$DeprecationContext.<init>(Configuration.java:409) at org.apache.hadoop.conf.Configuration.<clinit>(Configuration.java:448) at org.apache.hadoop.security.UserGroupInformation.ensureInitialized(UserGroupInformation.java:260) at org.apache.hadoop.security.UserGroupInformation.loginUserFromSubject(UserGroupInformation.java:790) at org.apache.hadoop.security.UserGroupInformation.getLoginUser(UserGroupInformation.java:760) at org.apache.hadoop.security.UserGroupInformation.getCurrentUser(UserGroupInformation.java:633) at org.apache.spark.util.Utils$$anonfun$getCurrentUserName$1.apply(Utils.scala:2245) at org.apache.spark.util.Utils$$anonfun$getCurrentUserName$1.apply(Utils.scala:2245) at scala.Option.getOrElse(Option.scala:121) at org.apache.spark.util.Utils$.getCurrentUserName(Utils.scala:2245) at org.apache.spark.SparkContext.<init>(SparkContext.scala:297) at org.apache.spark.SparkContext$.getOrCreate(SparkContext.scala:2256) at org.apache.spark.sql.SparkSession$Builder$$anonfun$8.apply(SparkSession.scala:831) at org.apache.spark.sql.SparkSession$Builder$$anonfun$8.apply(SparkSession.scala:823) at scala.Option.getOrElse(Option.scala:121) at org.apache.spark.sql.SparkSession$Builder.getOrCreate(SparkSession.scala:823) at spark.sparkMysql$.main(sparkToMysql.scala:11) at spark.sparkMysql.main(sparkToMysql.scala) Caused by: java.lang.ClassNotFoundException: org.apache.commons.collections.map.UnmodifiableMap at java.net.URLClassLoader.findClass(URLClassLoader.java:382) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 18 more Process finished with exi
06-02
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值