use*_*753 13 java classpath httpclient classnotfound
我试图从HttpClient 4.0.1运行一个示例应用程序.它是示例部分中的ClientMultiThreadedExecution.java文件.我把在classpath这些文件:apache-mime4j-0.6.jar; commons-codec-1.3.jar; commons-logging-1.1.1.jar; httpclient-4.0.1.jar; httpcore-4.0.1.jar; httpmime-4.0.1.jar并且文件正确编译.在运行时,我收到以下错误:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/http/client/methods/HttpUriRequest
Caused by: java.lang.ClassNotFoundException: org.apache.http.client.methods.HttpUriRequest
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:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
Run Code Online (Sandbox Code Playgroud)
我错过了参考吗?这似乎是一个类路径错误,但我无法弄清楚要包含哪个jar文件?预先感谢您的帮助.
此异常表示运行时类路径中缺少所提到的类.
有几种方法可以指定运行时类路径,具体取决于您执行程序的方式.由于一个体面的IDE从你的手中透明地接受这一切,我打赌你在命令提示符下运行它.
如果您通过java.exe -jar或双击该文件将其作为JAR文件运行,则需要Class-Path在JAR MANIFEST.MF文件的条目中指定类路径.需要注意的是%CLASSPATH%环境变量,-cp并且-classpath参数被忽略,只要你执行一个JAR.
如果您将其作为"普通的"Java应用程序运行java.exe,那么您需要在-cp或-classpath参数中指定它.请注意,无论何时使用此参数,%CLASSPATH%都会忽略环境变量.
无论哪种方式,类路径都应该存在一个(半)冒号分隔的JAR文件路径(绝对路径或相对于当前工作目录).例如
java -cp .;/path/to/file1.jar;/path/to/file2.jar com.example.MyClass
(如果您使用的是Unix/Linux,请使用冒号而不是分号作为路径分隔符)
| 归档时间: |
|
| 查看次数: |
53602 次 |
| 最近记录: |