2010-06-17 31 views
-1

什麼是BasicHttpRequest頭文件?我正在使用Apache HttpComponents。什麼是BasicHttpRequest頭文件

我試圖做一個簡單的程序,但我得到這個錯誤:

 
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory 
    at org.apache.http.impl.client.AbstractHttpClient.(AbstractHttpClient.java:159) 
    at org.apache.http.impl.client.DefaultHttpClient.(DefaultHttpClient.java:178) at test.main(test.java:24) 
Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:217) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205) 

,這是什麼行頭文件:

HttpRequest request = new BasicHttpRequest("GET", "/",HttpVersion.HTTP_1_1); 
+0

你能否詳細說明「但是我得到錯誤。」? – 2010-06-17 05:27:09

+0

線程「main」中的異常java.lang.NoClassDefFoundError:org/apache/commons/logging/LogFactory \t at org.apache.http.impl.client.AbstractHttpClient。 (AbstractHttpClient.java:159) \t at org.apache.http.impl.client.DefaultHttpClient。 (DefaultHttpClient.java:178) \t在test.main(test.java:24) 所致:拋出java.lang.ClassNotFoundException:在1 java.net.URLClassLoader的$ org.apache.commons.logging.LogFactory \t。運行(URLClassLoader.java:217) \t在java.security.AccessController.doPrivileged(本機方法) \t在java.net.URLClassLoader.findClass(URLClassLoader.java:205) – 2010-06-17 05:30:48

+0

我辯論重新措辭是這樣說的「什麼是'BasicHttpRequest'需要'import'嗎?「或者「我必須包含什麼樣的依賴關係,還有我必須爲'BasicHttpRequest'導入什麼?」,但我相信OP可能無法通過進行這樣的編輯來獲得期望的支持級別。 – 2010-09-29 23:04:38

回答

1

Java沒有「頭文件「就像你在C或C++中一樣。你得到的錯誤是運行時錯誤(不是編譯時錯誤),它與缺少「頭文件」沒有任何關係。

望着錯誤消息:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory ...

它抱怨找不到類org.apache.commons.logging.LogFactory。 Apache HttpComponents庫有許多依賴關係;其中之一是Apache Commons Logging。您需要下載該庫並將JAR文件放入您的類路徑中。

除了Commons Logging還有其他的依賴關係。你必須確保你的類路徑中包含了它們。看到這個網頁:Dependencies for Apache HttpComponents