【发布时间】:2016-08-30 07:26:08
【问题描述】:
我有这个奇怪的问题。我的应用程序在我执行它很多次时都运行得很好,但是昨天它突然开始抛出这个异常
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/http/client/methods/HttpUriRequest
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:56)
Caused by: java.lang.ClassNotFoundException: org.apache.http.client.methods.HttpUriRequest
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 3 more
许多人说问题可能是编译机的java版本(在Eclipse下我使用Java-8-Oracle J2SE-1.5)和执行机之间的一些兼容性问题,在这种情况下是使用虚拟机
>$java -version
java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)
这对我来说看起来不错。
编辑:
解决了!
原来问题与apache-httpclient.jar无关。问题是我的根目录的可用空间越来越少。当我尝试重新运行它时,我得到了Insufficient space for shared memory file 而不是之前的错误,所以通过删除 /temp 一切正常。
【问题讨论】: