hfy9013 发表于 2013-07-21 10:12

请问这个错误怎么解决

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
        at org.apache.commons.httpclient.HttpClient.<clinit>(HttpClient.java:66)
        at crawler.DownLoadFile.downloadFile(DownLoadFile.java:66)
        at crawler.MyCrawler.crawling(MyCrawler.java:40)
        at crawler.MyCrawler.main(MyCrawler.java:55)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 4 more

rover12421 发表于 2013-07-21 10:38

缺少包
http://commons.apache.org/proper/commons-logging/download_logging.cgi

hfy9013 发表于 2013-07-21 11:08

我加了,但是又有这样的问题Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/codec/DecoderException
        at org.apache.commons.httpclient.HttpMethodBase.<init>(HttpMethodBase.java:220)
        at org.apache.commons.httpclient.methods.GetMethod.<init>(GetMethod.java:89)
        at crawler.DownLoadFile.downloadFile(DownLoadFile.java:58)
        at crawler.MyCrawler.crawling(MyCrawler.java:40)
        at crawler.MyCrawler.main(MyCrawler.java:55)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.codec.DecoderException
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 5 more
我继续加包,还有更多的问题。。。。
回复 2# rover12421


   

rover12421 发表于 2013-07-21 11:36

回复 3# hfy9013


    还是缺包啊
http://commons.apache.org/proper/commons-codec/download_codec.cgi

rover12421 发表于 2013-07-21 11:39

你是用httclient没这么的外部包啊,你解压httpclient的时候里面有好几个jar,你都引入就行了
你需要的包应该都在commons一个包里,我给你发的是commons的一些子项目jar下载地址.httpclient里有commons这个包的

泥人 发表于 2013-07-22 10:53

看见它java.lang.NoClassDefFoundError,就把那个包放到lib目录下且在project将lib引入。

ddd010 发表于 2013-11-30 13:50

缺少log包,有好几个依赖包。

lll1985911 发表于 2013-12-02 13:31

运行的时候加上-verbose或者-XX:+TraceClassLoading,看看有没有加载名字里含有commons的jar包。
例如:
java -verbose <YourMainClass>
或者:
java -XX:+TraceClassLoading <YourMainClass>
如果没有加载的话就用-cp或者-classpath参数来指定jar包的路径。
页: [1]
查看完整版本: 请问这个错误怎么解决