错误:NoClassDefFoundError:Searcher(wrong name:news/Searcher)
DOS下提示错误:NoClassDefFoundError:Searcher(wrong name:news/Searcher)
程序中没有main函数吗?不明白
-------------------------------------------------------------------------------
package news;
import com.heaton.bot.HTTP;
import com.heaton.bot.HTTPSocket;
import com.heaton.bot.ISpiderReportable;
import com.heaton.bot.IWorkloadStorable;
import com.heaton.bot.Spider;
import com.heaton.bot.SpiderInternalWorkload;
//实现接口
public class Searcher
implements ISpiderReportable {
public static void main(String[] args) throws Exception {
//SpiderInternalWorkload:基于内存的作业管理的方法
IWorkloadStorable wl = new SpiderInternalWorkload();
Searcher _searcher = new Searcher();
Spider _spider
//Spider(报告发现的对象,开始的URL,HTTP处理程序(HTTPSocket 类来通过HTTP 协议发送和接收数据),线程池的大小,制定的作业管理器)
= new Spider(_searcher, "http://www.sina.com",
new HTTPSocket(), 100, wl);
//setMaxBody设置要下载的正文大小
_spider.setMaxBody(100);
_spider.start();
}
//发现内部链接
public boolean foundInternalLink(String url) {
return false;
}
//发现外部链接
public boolean foundExternalLink(String url) {
return false;
}
//发现其他链接(非HTML链接)
public boolean foundOtherLink(String url) {
return false;
}
//用于处理网页,Spider要完成的实际工作,page参数包含网页内容
public void processPage(HTTP http) {
System.out.println("扫描网页:" + http.getURL());
new HTMLParse(http).start();
}
//用来请求一个被处理的网页,这个网页刚刚被Spider下载,参数page中是网页的内容,当这个网页产生HTML错误时参数error为真
public void completePage(HTTP http, boolean error) {
}
//由Spider调用以确定查询字符串是否应删除,如果队列中的字符串应当删除,这一方法返回真
public boolean getRemoveQuery() {
return true;
}
//当Spider程序没有剩余的工作时调用这个方法
public void spiderComplete() {
}
}