我的代码要用到commons-httpclient包,我去网站下载并添加到eclispse Java Build Path里。
eclipse没有语法错误,当编译的时候却提示找不到符号,找不到符号的这些类都是commons-httpclient包里的类,请问这是怎么回事。
以下是源码
======================
package org.compiere.process;import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.logging.Level;
import java.util.logging.Logger;import org.apache.commons.httpclient.Cookie;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.cookie.CookiePolicy;
import org.apache.commons.httpclient.methods.PostMethod;

public class ProcessBlogB {
protected void prepare ()
{}
protected String doIt () throws Exception
{
postBlog();
return "";
}
public static void postBlog()
    {
        HttpClient client=new HttpClient();
        PostMethod post=new PostMethod("http://login.xiaonei.com/Login.do");
        post.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
        client.getParams().setCookiePolicy(CookiePolicy.BROWSER_COMPATIBILITY);
        NameValuePair[] data=
        {
            new NameValuePair("email","[email protected]"),
            new NameValuePair("password","12345678")
        };
        post.setRequestBody(data);
        try {
            client.executeMethod(post);
            Cookie [] cookies=client.getState().getCookies();
            InputStream stream=post.getResponseBodyAsStream();
            writeStream(stream);
            stream.close();
            post.releaseConnection();          
            post=new PostMethod("http://blog.xiaonei.com/NewEntry.do");
              post.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
            data=new NameValuePair[]{
                new NameValuePair("title","我也来试试"),
                new NameValuePair("body","测试。")  ,
                new NameValuePair("categoryId","0")  ,
                new NameValuePair("blogControl","99")  ,
                new NameValuePair("passwordProtedted","0")
            };
            post.setRequestBody(data);
            client.executeMethod(post);
            stream=post.getResponseBodyAsStream();
            writeStream(stream);
            stream.close();
            post.releaseConnection();
        }catch (HttpException ex) {
            Logger.getLogger(ProcessBlogB.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IOException ex) {
            Logger.getLogger(ProcessBlogB.class.getName()).log(Level.SEVERE, null, ex);
        } 
        
    }
    private static void writeStream(InputStream stream) throws IOException
    {
        BufferedReader reader=new BufferedReader(new InputStreamReader(stream));
        String line=null;
        for(line=reader.readLine();line!=null;line=reader.readLine())
        {
            System.out.println(line);
        }
        reader.close();
    }
}
编译错误信息
=========
[javac] E:\stephy\HF\demopos\base\src\org\compiere\process\ProcessBlogB.java:29: 找不到符号
    [javac] 符号: 类 HttpClient
    [javac] 位置: 类 org.compiere.process.ProcessBlogB
    [javac] HttpClient client=new HttpClient();
    [javac] ^
    [javac] E:\stephy\HF\demopos\base\src\org\compiere\process\ProcessBlogB.java:29: 找不到符号
    [javac] 符号: 类 HttpClient
    [javac] 位置: 类 org.compiere.process.ProcessBlogB
    [javac] HttpClient client=new HttpClient();
    [javac] ^
    [javac] E:\stephy\HF\demopos\base\src\org\compiere\process\ProcessBlogB.java:30: 找不到符号
    [javac] 符号: 类 PostMethod
    [javac] 位置: 类 org.compiere.process.ProcessBlogB
    [javac] PostMethod post=new PostMethod("http://login.xiaonei.com/Login.do");
    [javac] ^
    [javac] E:\stephy\HF\demopos\base\src\org\compiere\process\ProcessBlogB.java:30: 找不到符号
    [javac] 符号: 类 PostMethod
    [javac] 位置: 类 org.compiere.process.ProcessBlogB
    [javac] PostMethod post=new PostMethod("http://login.xiaonei.com/Login.do");
    [javac] ^
    [javac] E:\stephy\HF\demopos\base\src\org\compiere\process\ProcessBlogB.java:32: 找不到符号
    [javac] 符号: 变量 CookiePolicy
    [javac] 位置: 类 org.compiere.process.ProcessBlogB
    [javac] client.getParams().setCookiePolicy(CookiePolicy.BROWSER_COMPATIBILITY);
    [javac] ^
    [javac] E:\stephy\HF\demopos\base\src\org\compiere\process\ProcessBlogB.java:33: 找不到符号
    [javac] 符号: 类 NameValuePair
    [javac] 位置: 类 org.compiere.process.ProcessBlogB
    [javac] NameValuePair[] data=
    [javac] ^
    [javac] E:\stephy\HF\demopos\base\src\org\compiere\process\ProcessBlogB.java:35: 找不到符号
    [javac] 符号: 类 NameValuePair
    [javac] 位置: 类 org.compiere.process.ProcessBlogB
    [javac] new NameValuePair("email","[email protected]"),
    [javac] ^
    [javac] E:\stephy\HF\demopos\base\src\org\compiere\process\ProcessBlogB.java:36: 找不到符号
    [javac] 符号: 类 NameValuePair
    [javac] 位置: 类 org.compiere.process.ProcessBlogB
    [javac] new NameValuePair("password","12345678")
    [javac] ^
    [javac] E:\stephy\HF\demopos\base\src\org\compiere\process\ProcessBlogB.java:41: 找不到符号
    [javac] 符号: 类 Cookie
    [javac] 位置: 类 org.compiere.process.ProcessBlogB
    [javac] Cookie [] cookies=client.getState().getCookies();
    [javac] ^
    [javac] E:\stephy\HF\demopos\base\src\org\compiere\process\ProcessBlogB.java:46: 找不到符号
    [javac] 符号: 类 PostMethod
    [javac] 位置: 类 org.compiere.process.ProcessBlogB
    [javac] post=new PostMethod("http://blog.xiaonei.com/NewEntry.do");
    [javac] ^
    [javac] E:\stephy\HF\demopos\base\src\org\compiere\process\ProcessBlogB.java:48: 找不到符号
    [javac] 符号: 类 NameValuePair
    [javac] 位置: 类 org.compiere.process.ProcessBlogB
    [javac] data=new NameValuePair[]{
    [javac] ^
    [javac] E:\stephy\HF\demopos\base\src\org\compiere\process\ProcessBlogB.java:49: 找不到符号
    [javac] 符号: 类 NameValuePair
    [javac] 位置: 类 org.compiere.process.ProcessBlogB
    [javac] new NameValuePair("title","我也来试试"),
    [javac] ^
    [javac] E:\stephy\HF\demopos\base\src\org\compiere\process\ProcessBlogB.java:50: 找不到符号
    [javac] 符号: 类 NameValuePair
    [javac] 位置: 类 org.compiere.process.ProcessBlogB
    [javac] new NameValuePair("body","测试。")  ,
    [javac] ^
    [javac] E:\stephy\HF\demopos\base\src\org\compiere\process\ProcessBlogB.java:51: 找不到符号
    [javac] 符号: 类 NameValuePair
    [javac] 位置: 类 org.compiere.process.ProcessBlogB
    [javac] new NameValuePair("categoryId","0")  ,
    [javac] ^
    [javac] E:\stephy\HF\demopos\base\src\org\compiere\process\ProcessBlogB.java:52: 找不到符号
    [javac] 符号: 类 NameValuePair
    [javac] 位置: 类 org.compiere.process.ProcessBlogB
    [javac] new NameValuePair("blogControl","99")  ,
    [javac] ^
    [javac] E:\stephy\HF\demopos\base\src\org\compiere\process\ProcessBlogB.java:53: 找不到符号
    [javac] 符号: 类 NameValuePair
    [javac] 位置: 类 org.compiere.process.ProcessBlogB
    [javac] new NameValuePair("passwordProtedted","0")
    [javac] ^
    [javac] E:\stephy\HF\demopos\base\src\org\compiere\process\ProcessBlogB.java:61: 找不到符号
    [javac] 符号: 类 HttpException
    [javac] 位置: 类 org.compiere.process.ProcessBlogB
    [javac] }catch (HttpException ex) {