热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

WebLucene之安装习行录

WebLucene之安装习行录清人颜元曾说过:“学而必习,习又必
                                                   WebLucene 之安装习行录
 
  清人颜元曾说过:“学而必习,习又必行,固也”。若干年来,本人一直对这句话奉若神明,深感只有致用才能巩固学的效果,发现学的不足,享受学的乐趣。
  搜索引擎在近几年的发展虽没有大的突破,却逐步走向成熟,走向商业。同时,随着开源的搜索引擎逐渐增多,门槛也逐步降低,使得普通程序员也能有机会接触到这一高深的领域。由于对搜索引擎的兴趣所致,笔者也利用部分业余时间对此进行一些研究与尝试。本文及后续的文章主要记载笔者在实践中的一些操作过程及应用体会,同时参考了一些前人的文章,目的主要是为了备忘,也希望能对后来者有所参考与助益。
  目前较为有名的开源搜索引擎Nutch、Compass、Solr等都是基于Lucene之上,而在众多基于Lucene的检索系统中,车东先生的WebLucene可以说是国人在此领域非常有影响力的作品,那就首先从WebLucene的安装开始说起吧!
 
  1、安装系统环境
  (1)安装Java JDK
  安装Java JDK 1.4或更新的版本,同时设置好环境变量。这应该是这篇文章读者电脑里的基本设置,所以不再详述。
  (2)安装JavaCC 2.1
  从JavaCC的 项目主页(https://javacc.dev.java.net/servlets/ProjectDocumentList?folderID=212&expandFolder=212&folderID=0) 下载到JavaCC 2.1的版本,请注意,一定要下载JavaCC 2.1版本。笔者下载了JavaCC的最新版本4.0之后,发现WebLucene并不支持此版本,只好重新去下载JavaCC 2.1。
  解压JavaCC2_1.zip文件后,打开DOS命令提示符窗口,来到刚解压生成的目录,输入如下命令来安装JavaCC(如图1所示):
       java -cp ./ JavaCC2_1 -c

                                    (图1)
 
在接受协议之后,选择要安装的目录路径,回车后就进行自动的安装操作了,等看到如图
2所示的提示表示已安装成功。

                 (图2)
 
  (3)安装Ant
  从http://ant.apache.org下载Ant的最新版本,解压文件后,分别设置环境变量ANT_HOME与PATH。
  在DOS命令提示符窗口输入ant,如果出现如图3所示的提示,则表明已安装成功。

                   (图3)
 
  (4)部署WebLucene工程
  
本文使用的应用服务器为resin-3.0.17,将下载来的WebLucene压缩包解压到resin-3.0.17目录下的webapps目录中。
 
  2、Build项目
  (1)准备Build环境
  首先将weblucene目录下的文件build.properties.default重命名为build.properties,打开此文件,将内容修改为如下的形式,读者可依据自己的实际目录来做相应调整:
# ---------------------------------------------------------
# WebLucene BUILD PROPERTIES
# ---------------------------------------------------------
jsdk_jar=E:\\resin-3.0.17\\lib\\jsdk-24.jar
javacc.home=D:\\opensource\\JavaCC2_1\\javacc2.1\\bin
javacc.zip.dir=D:\\opensource\\JavaCC2_1\\javacc2.1\\bin\\lib
javacc.zip=D:\\opensource\\JavaCC2_1\\javacc2.1\\bin\\lib\\JavaCC.zip
  (2)Build工程
  在DOS命令提示符窗口中将当前路径调整到weblucene目录,输入“ant build”命令,如出现图4所示的提示,则表示已Build成功。如果build失败,请检查CLASSPATH中的环境变量以及build.properties文件中的相应配置是否正确。

                                        (图4)
 
  3、创建索引
  创建索引使用IndexRunner命令,位于/weblucene/WEB-INF/classes/IndexRunner.class,其参数格式为:
  -i xml_url       输入XML的URL
  -o output_dir    输出索引的目录
  在dump目录中有一blog.xml文件,我们可以对其进行创建索引的测试。当然读者也可以使用自己准备的素材来进行创建索引的测试,在后续文章中笔者将会对其作进一步的讨论。
  在DOS命令提示符窗口中进行如图5所示的操作,见到如下提示则表示创建索引成功:
  50 rows added Total time Use:0 second
  750 [main] INFO IndexRunner - Great! Indexing OK

 
                                       (图5)
 
对于输入上面这么多的命令,读者可能会不太习惯,笔者制作了一个批处理文件index.bat,可以在http://files.cnblogs.com/dev2dev/WebLucene之安装习行录index.rar 下载。读者下载后可依据自己的实际目录来做相应调整,然后双击此文件运行即可完成创建索引的操作了。
 
  4、搜索测试
  搜索使用SearchRunner 命令,位于 /weblucene/WEB-INF/classes/SearchRunner.class,其参数格式为:
  
-i  索引所在的目录
  
-f  索引的字段名
  -k  查询的关键字
  在DOS命令提示符窗口中进行如图6所示的操作,可以看到搜索结果被打印到屏幕上:

                                             (图6)
 
从上面的图中可以看出WebLucene采用了二元分词,在后续的文章中笔者将会对分词作进一步的讨论。
 
  5、部署Web应用
  (1)在resin.conf文件里加上如下的配置,读者可依据自己的实际目录来做相应调整:
  
   
  
  (2)将weblucene/webapp/WEB-INF/conf/目录下的log4j.conf.default重命名成 log4j.conf,并将文件中的log4j.appender.A1.File设置成为E:\\resin-3.0.17\\webapps\\weblucene\\webapp\\WEB-INF\\logs\\weblucene.log,请读者依据自己的实际目录来做调整。
  (3)启动Resin应用服务器,打开浏览器在地址栏中输入http://localhost:8080/weblucene /search.html会出现如图7所示的页面:

                                     (图7)
 
在搜索框中输入关键字“路线图”,点击查询后会出现如图8所示的页面:

 
                                         (图8)
 
  好了,关于WebLucene的安装就告一段落,在后续文章中笔者将来讲述如何实现基于WebLucene的应用。 
推荐阅读
  • Lucene 全文检索技术入门
    一、搜索引擎的历史萌芽:Archie、Gopher起步:Robot(网络机器人)的出现与spider(网络爬虫)发展:excite、galax ... [详细]
  • 一:什么是solrSolr是apache下的一个开源项目,使用Java基于lucene开发的全文搜索服务器;Lucene是一个开放源代 ... [详细]
  • javajigsaw2015年12月1日,星期二,在OpenJDK邮件列表中,MarkReinhold确认了许多人的期望:J ... [详细]
  •   接着上篇http:cxshun.iteye.comblog1039445,我们讲了怎么初始化配置solr,并运行。问题来了,当我们配置完成后,索引当中并没有任何东西,就是说我们查询得到的 ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • 开发笔记:spring boot项目打成war包部署到服务器的步骤与注意事项
    本文介绍了将spring boot项目打成war包并部署到服务器的步骤与注意事项。通过本文的学习,读者可以了解到如何将spring boot项目打包成war包,并成功地部署到服务器上。 ... [详细]
  • Spring框架《一》简介
    Spring框架《一》1.Spring概述1.1简介1.2Spring模板二、IOC容器和Bean1.IOC和DI简介2.三种通过类型获取bean3.给bean的属性赋值3.1依赖 ... [详细]
  • solr导入mysql_Solr导入MySQL中的数据
    一、目标将MySQL数据库中的数据导入至Solr中,并且由Solr生成中文索引,使用Solr查询信息。二、数据导入1、将solr-8.2.0dist下的 ... [详细]
  • 首先我们在taotao-search-interface工程中新建一个SearchService接口,并在接口中添加一个方法,如下图所示。接着,我们到taotao-search-s ... [详细]
  • 新版本的solr的dist下并没有war包,本人安装了好多次均告失败,所以直接安装了一个旧版本。1.首先吧solr下的dist下的war包直接放在tomcat的wepapp下,改名成s ... [详细]
  • svnWebUI:一款现代化的svn服务端管理软件
    svnWebUI是一款图形化管理服务端Subversion的配置工具,适用于非程序员使用。它解决了svn用户和权限配置繁琐且不便的问题,提供了现代化的web界面,让svn服务端管理变得轻松。演示地址:http://svn.nginxwebui.cn:6060。 ... [详细]
  • solr倒排索引(转载)
    原文地址:http:blog.csdn.netchichengitarticledetails9235157http:blog.csdn.netnjpjsoftdevarticle ... [详细]
  • MDI窗体容器-放窗体的容器窗体时顶级控件,是不允许放到其他的控件或窗体中的(李献策lxc)窗体属性中有一个属性:IsMdiContainer-确定该窗体是否是MDI容器在窗体中 ... [详细]
  • 添加商品数据Spring容器由Spring容器,来管理SolrServer将SolrServer注入Spring容器添加配置文件applicationConte ... [详细]
  • CDH5 Solr性能调优
    2019独角兽企业重金招聘Python工程师标准Solr性能调优Solr性能调优是个复杂的过程,本文旨在描述Solr在使用过程中对性能优化的注意事项。在安装完成 ... [详细]
author-avatar
葛菁昱
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有