我已经下载了所谓最新的JDK 1.3兼容二进制文件,名为json-lib-2.4-jdk13.jar,并且出现以下错误。使用JSON-Lib和JDK 1.4的NoSuchMethodError
Exception in thread "main" java.lang.NoSuchMethodError: java.lang.ThreadLocal: method remove()V not found
at net.sf.json.AbstractJSON.removeInstance(AbstractJSON.java:221)
我查了JDK 1.4 API,发现在一个ThreadLocal是remove方法确实是不支持的,只有在JDK 1.5
有问题的代码是说:
protected static void removeInstance(Object instance)
{
Set set = getCycleSet();
set.remove(instance);
if (set.size() == 0)
cycleSet.remove();
}
有谁知道如果我在这里漏掉了一些明显的东西,或者需要额外下载什么东西?
Java 1.3和1.4是非常古老的。你应该考虑升级。是的,这是工作的一点点了,但是这是不是以后遇到重大JDK错误(或OS不兼容)要好得多,在这一点上,你完全失去了运气 –
[设置#删除(对象)](HTTP的:// download.oracle.com/javase/1.3/docs/api/java/util/Set.html#remove(java.lang.Object)) – alphazero
@Adam当然你是对的。我正在研究一些遗留代码,并没有奢侈的更新jdk – Brad