kingpub

          海內(nèi)存知己,博客若比鄰

           

          WebLucene 之安裝習(xí)行錄

           清人顏元曾說(shuō)過(guò):“學(xué)而必習(xí),習(xí)又必行,固也”。若干年來(lái),本人一直對(duì)這句話奉若神明,深感只有致用才能鞏固學(xué)的效果,發(fā)現(xiàn)學(xué)的不足,享受學(xué)的樂趣。
            搜索引擎在近幾年的發(fā)展雖沒有大的突破,卻逐步走向成熟,走向商業(yè)。同時(shí),隨著開源的搜索引擎逐漸增多,門檻也逐步降低,使得普通程序員也能有機(jī)會(huì)接觸到這一高深的領(lǐng)域。由于對(duì)搜索引擎的興趣所致,筆者也利用部分業(yè)余時(shí)間對(duì)此進(jìn)行一些研究與嘗試。本文及后續(xù)的文章主要記載筆者在實(shí)踐中的一些操作過(guò)程及應(yīng)用體會(huì),同時(shí)參考了一些前人的文章,目的主要是為了備忘,也希望能對(duì)后來(lái)者有所參考與助益。
            目前較為有名的開源搜索引擎Nutch、Compass、Solr等都是基于Lucene之上,而在眾多基于Lucene的檢索系統(tǒng)中,車東先生的WebLucene可以說(shuō)是國(guó)人在此領(lǐng)域非常有影響力的作品,那就首先從WebLucene的安裝開始說(shuō)起吧!
          ?
            1、安裝系統(tǒng)環(huán)境
            (1)安裝Java JDK
            安裝Java JDK 1.4或更新的版本,同時(shí)設(shè)置好環(huán)境變量。這應(yīng)該是這篇文章讀者電腦里的基本設(shè)置,所以不再詳述。
            (2)安裝JavaCC 2.1
            從JavaCC的 項(xiàng)目主頁(yè)(https://javacc.dev.java.net/servlets/ProjectDocumentList?folderID=212&expandFolder=212&folderID=0 下載到JavaCC 2.1的版本,請(qǐng)注意,一定要下載JavaCC 2.1版本。筆者下載了JavaCC的最新版本4.0之后,發(fā)現(xiàn)WebLucene并不支持此版本,只好重新去下載JavaCC 2.1。
            解壓JavaCC2_1.zip文件后,打開DOS命令提示符窗口,來(lái)到剛解壓生成的目錄,輸入如下命令來(lái)安裝JavaCC(如圖1所示):
          ?????? java -cp ./ JavaCC2_1 -c

          ???????????????????????             (圖1)
          ?
          在接受協(xié)議之后,選擇要安裝的目錄路徑,回車后就進(jìn)行自動(dòng)的安裝操作了,等看到如圖
          2所示的提示表示已安裝成功。

          ??????????       (圖2)
          ?
            (3)安裝Ant
            http://ant.apache.org下載Ant的最新版本,解壓文件后,分別設(shè)置環(huán)境變量ANT_HOME與PATH。
            在DOS命令提示符窗口輸入ant,如果出現(xiàn)如圖3所示的提示,則表明已安裝成功。

          ??????????????     (圖3)
          ?
            (4)部署WebLucene工程
            
          本文使用的應(yīng)用服務(wù)器為resin-3.0.17,將下載來(lái)的WebLucene壓縮包解壓到resin-3.0.17目錄下的webapps目錄中。
          ?
            2、Build項(xiàng)目
            (1)準(zhǔn)備Build環(huán)境
            首先將weblucene目錄下的文件build.properties.default重命名為build.properties,打開此文件,將內(nèi)容修改為如下的形式,讀者可依據(jù)自己的實(shí)際目錄來(lái)做相應(yīng)調(diào)整:
          # ---------------------------------------------------------
          # 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命令提示符窗口中將當(dāng)前路徑調(diào)整到weblucene目錄,輸入“ant build”命令,如出現(xiàn)圖4所示的提示,則表示已Build成功。如果build失敗,請(qǐng)檢查CLASSPATH中的環(huán)境變量以及build.properties文件中的相應(yīng)配置是否正確。

          ????????????????????????????            (圖4)
          ?
            3、創(chuàng)建索引
            創(chuàng)建索引使用IndexRunner命令,位于/weblucene/WEB-INF/classes/IndexRunner.class,其參數(shù)格式為:
            -i xml_url?????? 輸入XML的URL
            -o output_dir??? 輸出索引的目錄
            在dump目錄中有一blog.xml文件,我們可以對(duì)其進(jìn)行創(chuàng)建索引的測(cè)試。當(dāng)然讀者也可以使用自己準(zhǔn)備的素材來(lái)進(jìn)行創(chuàng)建索引的測(cè)試,在后續(xù)文章中筆者將會(huì)對(duì)其作進(jìn)一步的討論。
            在DOS命令提示符窗口中進(jìn)行如圖5所示的操作,見到如下提示則表示創(chuàng)建索引成功:
            50 rows added Total time Use:0 second
            750 [main] INFO IndexRunner - Great! Indexing OK

          ?
          ????????????????????????????           (圖5)
          ?
          對(duì)于輸入上面這么多的命令,讀者可能會(huì)不太習(xí)慣,筆者制作了一個(gè)批處理文件index.bat,可以在http://www.cnblogs.com/Files/dev2dev/WebLucene之安裝習(xí)行錄index.rar 下載。讀者下載后可依據(jù)自己的實(shí)際目錄來(lái)做相應(yīng)調(diào)整,然后雙擊此文件運(yùn)行即可完成創(chuàng)建索引的操作了。
          ?
            4、搜索測(cè)試
            搜索使用SearchRunner 命令,位于 /weblucene/WEB-INF/classes/SearchRunner.class,其參數(shù)格式為:
            
          -i ?索引所在的目錄
            
          -f ?索引的字段名
            -k ?查詢的關(guān)鍵字
            在DOS命令提示符窗口中進(jìn)行如圖6所示的操作,可以看到搜索結(jié)果被打印到屏幕上:

          ????????????????????????????????             (圖6)
          ?
          從上面的圖中可以看出WebLucene采用了二元分詞,在后續(xù)的文章中筆者將會(huì)對(duì)分詞作進(jìn)一步的討論。
          ?
            5、部署Web應(yīng)用
            (1)在resin.conf文件里加上如下的配置,讀者可依據(jù)自己的實(shí)際目錄來(lái)做相應(yīng)調(diào)整:
            <host id="" root-directory=".">
             <web-appid='/weblucene' ?document-directory="E:\resin-3.0.17\webapps\weblucene\webapp"/>
            </host>
            (2)將weblucene/webapp/WEB-INF/conf/目錄下的log4j.conf.default重命名成 log4j.conf,并將文件中的log4j.appender.A1.File設(shè)置成為E:\\resin-3.0.17\\webapps\\weblucene\\webapp\\WEB-INF\\logs\\weblucene.log,請(qǐng)讀者依據(jù)自己的實(shí)際目錄來(lái)做調(diào)整。
            (3)啟動(dòng)Resin應(yīng)用服務(wù)器,打開瀏覽器在地址欄中輸入http://localhost:8080/weblucene /search.html會(huì)出現(xiàn)如圖7所示的頁(yè)面:

          ??????????????????????????????       (圖7)
          ?
          在搜索框中輸入關(guān)鍵字“路線圖”,點(diǎn)擊查詢后會(huì)出現(xiàn)如圖8所示的頁(yè)面:

          ?
          ??????????????????????????????           (圖8)
          ?
             好了,關(guān)于 WebLucene 的安裝就告一段落,在后續(xù)文章中筆者將來(lái)講述如何實(shí)現(xiàn)基于 WebLucene 的應(yīng)用。?

          posted on 2006-08-30 14:07 xiaofeng 閱讀(251) 評(píng)論(0)  編輯  收藏 所屬分類: weblucene

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(2)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          收藏夾

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 台湾省| 巴东县| 马公市| 新化县| 吉隆县| 宜兴市| 普定县| 调兵山市| 吴忠市| 九江市| 河源市| 新宁县| 米泉市| 庆安县| 昌图县| 奈曼旗| 吴桥县| 南投县| 读书| 瑞丽市| 扶沟县| 绥芬河市| 饶阳县| 蓬安县| 全州县| 邢台市| 合阳县| 鹰潭市| 礼泉县| 周宁县| 江口县| 柘荣县| 遂溪县| 侯马市| 淮安市| 灵璧县| 应城市| 耒阳市| 永善县| 拉萨市| 昌宁县|