5

こんにちは私はエラーが発生し続けます ここに画像の説明を入力してください

test.java:15: package org.apache.commons.httpclient does not exist
import org.apache.commons.httpclient.Cookie;
                                ^
test.java:16: package org.apache.commons.httpclient does not exist
import org.apache.commons.httpclient.HttpState;
                                ^
test.java:17: package org.apache.commons.httpclient does not exist
import org.apache.commons.httpclient.HttpClient;
                                ^
test.java:18: package org.apache.commons.httpclient.methods does not exist
import org.apache.commons.httpclient.methods.GetMethod;
                                        ^
test.java:22: cannot find symbol
symbol  : class HttpClient
location: class test
            HttpClient client = new HttpClient();
            ^
test.java:22: cannot find symbol
symbol  : class HttpClient
location: class test
            HttpClient client = new HttpClient();
                                    ^
test.java:26: cannot find symbol
symbol  : class GetMethod
location: class test
            GetMethod method = new GetMethod("https://online.investools.com/authentication/auth.iedu");
            ^
test.java:26: cannot find symbol
symbol  : class GetMethod
location: class test
            GetMethod method = new GetMethod("https://online.investools.com/authentication/auth.iedu");
                                   ^
test.java:29: cannot find symbol
symbol  : class Cookie
location: class test
                              Cookie[] cookies = client.getState().getCookies();
                              ^
test.java:31: cannot find symbol
symbol  : class Cookie
location: class test
                                    Cookie cookie = cookies[i];
                                    ^
10 errors

私が使用したコンパイル

javac -cp ;./httpclient-4.2.jar;jsoup-1.6.3.jar test.java

これがコードです

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import org.apache.commons.httpclient.Cookie;  
import org.apache.commons.httpclient.HttpState;  
import org.apache.commons.httpclient.HttpClient;  
import org.apache.commons.httpclient.methods.GetMethod; 


public class test{
public static void main (String []args)throws IOException{
    HttpClient client = new HttpClient();  
    client.getParams().setParameter("username", "SomeUSER");  
    client.getParams().setParameter("password", "GF@QT#$WE");  

    GetMethod method = new GetMethod("https://online.investools.com/authentication/auth.iedu");  
        try{  
              client.executeMethod(method);  
              Cookie[] cookies = client.getState().getCookies();  
              for (int i = 0; i < cookies.length; i++) {  
                Cookie cookie = cookies[i];  
                System.err.println(  
                  "Cookie: " + cookie.getName() +  
                  ", Value: " + cookie.getValue() +  
                  ", IsPersistent?: " + cookie.isPersistent() +  
                  ", Expiry Date: " + cookie.getExpiryDate() +  
                  ", Comment: " + cookie.getComment());  
                }  
              client.executeMethod(method);  
        } 
        catch(Exception e) {  
          System.err.println(e);  
        } 
        finally {  
          method.releaseConnection();  
        }

私は非常に混乱していて、何が間違っているのかわかりません。簡単だと思いますが、何度かチェックしてみましたが、存在し、jsoupは正常にコンパイルされます。ありがとう

4

3 に答える 3

8

HttpClient 4.2org.apache.http.clientを使用している場合は、必要だと思います(それはあなたのようです)。パッケージは旧バージョン用です。org.apache.commons.httpclient

EDIT:含まれていたすべてのクラスhttpclientが現在含まれているわけではありませんhttp.client。いくつかはちょうど入っていhttpます。さらに、他の変更が必要です。たとえば、HttpClientはインターフェイスになっているため、そのようにインスタンス化することはできません。基本的に、3.x コードを持っているので、それを 4.x に更新するか、3.x jar ファイルを使用する必要があります。

于 2012-06-11T19:59:53.747 に答える
1

ここから欠落しているバージョンを見つけました: http://mvnrepository.com/artifact/commons-httpclient/commons-httpclient

dependencies {
    compile 'commons-httpclient:commons-httpclient:3.1'
}
于 2016-05-01T13:25:09.733 に答える
0

jar -xvf httpclient-4.2.java temp を使用します

org/apache/commons/httpclient/Cookie があるかどうかを確認します。ない場合は、間違っているか破損した jar です

javac -cp .;./httpclient-4.2.jar;jsoup-1.6.3.jar test.java の代わりに javac -cp ;./httpclient-4.2.jar;jsoup-1.6.3.jar test.java も試してください。

于 2012-06-11T20:06:11.050 に答える