这是在myeclipse 项目上的classpath 
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="lib" path="lib/commons-logging-adapters-1.1.1.jar"/>
<classpathentry kind="lib" path="lib/log4j-1.2.15.jar"/>
<classpathentry kind="lib" path="lib/commons-dbcp-1.2.2.jar"/>
<classpathentry kind="lib" path="lib/commons-pool-1.4.jar"/>
<classpathentry kind="lib" path="lib/classes12.jar"/>
<classpathentry kind="lib" path="lib/apache-mime4j-0.6.jar"/>
<classpathentry kind="lib" path="lib/commons-codec-1.3.jar"/>
<classpathentry kind="lib" path="lib/commons-logging-1.1.1.jar"/>
<classpathentry kind="lib" path="lib/httpclient-4.0.jar" sourcepath="F:/workspace/net/source/httpcomponents-client-4.0-src.zip"/>
<classpathentry kind="lib" path="lib/httpcore-4.0.1.jar" sourcepath="F:/workspace/net/source/httpcomponents-core-4.0.1-src.zip"/>
<classpathentry kind="lib" path="lib/httpmime-4.0.jar"/>
<classpathentry kind="lib" path="lib/commons-lang-2.4.jar"/>
<classpathentry kind="lib" path="lib/htmlparser.jar"/>
<classpathentry kind="lib" path="lib/filterbuilder.jar"/>
<classpathentry kind="lib" path="lib/htmllexer.jar"/>
<classpathentry kind="lib" path="lib/sitecapturer.jar"/>
<classpathentry kind="lib" path="lib/thumbelina.jar"/>
<classpathentry kind="output" path="bin"/>
</classpath>下面是我打包出来 jar 
用bat文件设置classpath 
set classpath=%CLASSPATH%;.;F:\lib\lib\commons-logging-adapters-1.1.1.jar;F:\log4j-1.2.15.jar;F:\lib\commons-dbcp-1.2.2.jar;F:\lib\commons-pool-1.4.jar;F:\lib\classes12.jar;F:\lib\apache-mime4j-0.6.jar;F:\lib\commons-codec-1.3.jar;F:\lib\commons-logging-1.1.1.jar;F:\lib\httpclient-4.0.jar;F:\lib\httpcore-4.0.1.jar;F:\lib\httpmime-4.0.jar;F:\lib\commons-lang-2.4.jar;F:\lib\htmlparser.jar;F:\lib\filterbuilder.jar;F:\lib\htmllexer.jar;F:\lib\sitecapturer.jar;F:\lib\thumbelina.jar;
cd  F:\Program Files\java1.6\bin
java  -jar f:/spider.jar两个classpath  一样,但为什么会报Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commo
gging/LogFactory
        at com.net.db.dao.SiteInfoDao.<clinit>(SiteInfoDao.java:19)
        at com.net.site.Spider.<init>(Spider.java:25)
        at com.net.site.Spider.main(Spider.java:51)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.Logry
        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:303)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:316)
        ... 3 moreLogFactory是在commons-logging-1.1.1.jar里,但我在classpath里设置了
怎么还报这个错

解决方案 »

  1.   

    F:\lib\lib\commons-logging-adapters-1.1.1.jar;F:\log4j-1.2.15.jar;一个多了层lib目录一个少了层lib目录
      

  2.   

    恩set classpath =.;
    F:\lib\commons-logging-adapters-1.1.1.jar;
    F:\lib\log4j-1.2.15.jar;
    F:\lib\commons-dbcp-1.2.2.jar;
    F:\lib\commons-pool-1.4.jar;
    F:\lib\classes12.jar;
    F:\lib\apache-mime4j-0.6.jar;
    F:\lib\commons-codec-1.3.jar;
    F:\lib\httpclient-4.0.jar;
    F:\lib\httpcore-4.0.1.jar;
    F:\lib\httpmime-4.0.jar;
    F:\lib\commons-lang-2.4.jar;
    F:\lib\htmlparser.jar;
    F:\lib\filterbuilder.jar;
    F:\lib\htmllexer.jar;
    F:\lib\sitecapturer.jar;
    F:\lib\thumbelina.jar;
    F:\lib\commons-logging-1.1.1.jar;cd  F:\Program Files\java1.6\bin
    java  -jar f:/spider.jar
    pause;上面是修改过来的,最后一个就是,但问题依旧
      

  3.   

    spider.jar中meta-inf文件的classpath
      

  4.   

    我到后来也没加上,好像换了下jar包顺序就好了,真郁闷