Java “线程中的异常”;“主要”;NoClassDefFoundError:org/apache/commons/logging/LogFactory-命令行

Java “线程中的异常”;“主要”;NoClassDefFoundError:org/apache/commons/logging/LogFactory-命令行,java,ftp,Java,Ftp,我正在尝试运行一个jar,它将文件从FTP服务器下载到我的本地机器上,根据用户手册,有ftpcourier.jar包含执行任务的类文件。 根据用户手册,我准备了一个命令,但我在控制台上得到NoClassDefFoundError C:\Program Files\Java\jdk1.7.0_79\jre\bin>java -Demail-conf-path=d:\config -jar ftpcourier.jar -d RCVE -h test.hostname.com -u sman

我正在尝试运行一个jar,它将文件从FTP服务器下载到我的本地机器上,根据用户手册,有ftpcourier.jar包含执行任务的类文件。 根据用户手册,我准备了一个命令,但我在控制台上得到NoClassDefFoundError

C:\Program Files\Java\jdk1.7.0_79\jre\bin>java  -Demail-conf-path=d:\config -jar ftpcourier.jar -d RCVE -h test.hostname.com -u smandal -w Password# -f /TIFR/report.xls -t d:\Local -s true -p 22 -x true
在控制台上获取错误

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/
    at com.dmainc.commons.stuff.ftp.FTPCourier.<clinit>(FTPCourier
Caused by: java.lang.ClassNotFoundException: org.apache.commons.loggin
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:30
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    ... 1 more
线程“main”java.lang.NoClassDefFoundError:org/apache中出现异常/ 在com.dmainc.commons.stuff.ftp.FTPCourier.(FTPCourier 原因:java.lang.ClassNotFoundException:org.apache.commons.loggin 在java.net.URLClassLoader$1.run(URLClassLoader.java:366) 在java.net.URLClassLoader$1.run(URLClassLoader.java:355) 位于java.security.AccessController.doPrivileged(本机方法) 位于java.net.URLClassLoader.findClass(URLClassLoader.java:354) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:425) 在sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:30 位于java.lang.ClassLoader.loadClass(ClassLoader.java:358) …还有一个 我在环境变量中添加了commons-logging-1.1.1.jar完整路径。
请给出任何建议。

您不应该将其添加到环境变量中,而可以将该路径添加到命令行本身。在命令中指定如下目录路径。*表示它将接受给定路径中的所有JAR

C:\Program Files\Java\jdk1.7.0_79\jre\bin>java -cp .;<path>\*;  -Demail-conf-path=d:\config -jar ftpcourier.jar -d RCVE -h test.hostname.com -u smandal -w Password# -f /TIFR/report.xls -t d:\Local -s true -p 22 -x true
C:\ProgramFiles\Java\jdk1.7.0\u 79\jre\bin>Java-cp;\*-Demail conf path=d:\config-jar ftpcourier.jar-d RCVE-h test.hostname.com-u smandal-w Password#-f/TIFR/report.xls-t d:\Local-s true-p 22-x true

仍不工作…我已将所有jar(包括ftpcourier和commons)放在一个文件夹中,并运行命令..C:\Program Files\Java\jdk1.7.0\u 79\jre>Java-cp;;D:\task\ftpcourier*-Demail conf path=D:\config-jar ftpcourier.jar-D RCVE-h test.hostname.com-u smandal-w Password\f/TIFR/report.xls-td:\Local-s trueit应该是D:\task\ftpcourier*