kingpub

          海內存知己,博客若比鄰

           

          WebLucene的安裝實踐

          (轉)WebLucene的安裝實踐

          全文搜索的問題是老大難問題,誰都要用到,但是搜索技術可是google和baidu等吃飯的家伙,怎么可能讓大家知道。幸好有開源項目Lucene,不 過不支持中文。中文方塊字真是難,前幾天關注的聊天機器人也就是被方塊字給卡死了。不過有了WebLucene,車東的一個開源項目,基于Lucene, 算是給我們帶來了福音。
             計劃安裝WebLucene,網上找了一下資料不多,比較實在的就2篇,不過很不錯啦,:)。按部就班的裝完,發現還有些問題。就再找了一下,居然自己 忽略了WebLucene的中文安裝手冊。郁悶,都怪自己的思維定勢,什么都先去網上找資料。其實這個中文安裝手冊已經比較詳細了。btw:安裝手冊是非 windows平臺的,所以大家還是有必要找網上的windows安裝經驗。不過我熟悉unix/linux這些,當然會后悔找資料花了很長時間。
            好的,我來介紹windows的安裝過程,我的安裝實踐。
          1. 安裝環境準備
          ==============

          1.1 安裝Java JDK
          —————-
          安裝Java JDK 1.4或更新版本(SUN http://java.sun.com/products/j2se/).
          關于如何在相應的操作系統上安裝JDK,請參考相應文檔。

          設置環境變量:
          JAVA_HOME=C:\j2sdk1.4.2_07
          PATH=%JAVA_HOME%\bin;%PATH%
          CLASSPATH=%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar

          1.2 安裝 JavaCC 2.1
          ———————
          從 JavaCC 項目的主頁 https://javacc.dev.java.net/ 下載 JavaCC 2.1 版本

          關于如何安裝 JavaCC 2.1 請參考
          see https://javacc.dev.java.net/doc/installhelp.html
          如何找到舊版本的JavaCC
          https://javacc.dev.java.net/files/documents/17/711/JavaCC2_1.class

          命令行模式的安裝:
          java -cp ./ JavaCC2_1 -c
          (如果不加-c就是圖形模式安裝)
          我推薦下在zip版本;下載javacc2.1? 點擊下載此文件, 解壓縮javacc2.1版本,在dos下進入目錄(也就是JavaCC2_1.class的目錄),執行java -cp ./ JavaCC2_1 -c,會出現一些提示信息,回車直至出現讓你輸入安裝目錄的提示Enter installation directory,輸入你要安裝的目錄,我的是:C:\Develop\javacc2.1。安裝成功后,桌面會出現一個javacc的圖標(不知道是 不是一個馬頭,呵呵)。
          (特別注意:感覺weblucene只支持javacc2.1,反正最新javacc3.2版本不能夠用)

          1.3 安裝 Ant
          ————
          http://ant.apache.org 下載Ant關于如何安裝Ant的細節請參考 http://ant.apache.org/manual/index.html

          設置環境變量
          ANT_HOME=C:\java\ant-1.6.5
          PATH=%ANT_HOME%\bin;%PATH%

          在dos窗口輸入ant,如果出現:
          Buildfile: build.xml does not exist!
          Build failed
          則證明安裝成功。

          1.4 安裝Java應用服務器
          ———————
          WebLucene 需要 Servlet 2.3 / JSP 1.2 兼容的Java應用服務器。 此版本在Tomcat 4.1.x和Resin 2.1.x上測試通過。

          http://jakarta.apache.org/tomcat/index.html 安裝 Tomcat

          設置環境變量:
          CATALINA_HOME=C:\Develop\Tomcat4.1

          Tomcat在standalone模式下,使用8080端口。
          也可以將應用服務器和Web服務器綁定在一起使用,請參考相應的安裝和環境變量設置。

          進 入tomcat的安裝目錄C:\Develop\Tomcat4.1\bin,雙擊打開startup.bat就可以啟動tomcat。啟動時會跳出一個 dos窗口,出現一大堆提示信息,最后會有一句Server startup in **** ms,這樣就表示安裝成功,服務啟動了。

          1.5 將WebLucene部署到成webapps
          —————————–
          只需將tar.gz包解壓到Tomcat的webapps目錄(官方解釋)
          我的做法是將weblucene.gz解壓,得到weblucene文件,沒有后綴。對文件改名成weblucene.rar。再解壓。對解壓的文件復制到Tomcat的webapps目錄
          C:\Develop\Tomcat4.1\webapps\weblucene下面有一個文件build.properties.default,將其重命名為build.properties。

          修改build.properties的內容為:
          jsdk_jar=C:\\Develop\\Tomcat4.1\\\common\\lib\\servlet.jar
          javacc.home = C:\\Develop\\javacc2.1\\bin
          javacc.zip.dir = C:\\Develop\\javacc2.1\\bin\\lib
          javacc.zip = C:\\Develop\\javacc2.1\\bin\\lib\\JavaCC.zip

          需要檢查自己的目錄中,是否有servlet.jar和JavaCC.zip這兩個文件,因為版本不一樣,有的命名也不一樣。路徑是\\,而不是/,大家不要搞錯了。同樣建議不要使用環境變量%,因為好像這里不起作用,:(

          2.2 Build
          ———
          在weblucene根目錄下運行 “ant build” 命令:

          C:\Develop\Tomcat4.1\webapps\weblucene>ant build

          注意:如果build失敗,請檢查%CLASSPATH% 環境變量,并確保重要的jar包都在相應路徑下。
          提示失敗而前面的步驟(安裝工具以及環境變量的設置)又都正確,那就檢查build.properties文件是否正確,以及build.xml是否正確。根據提示信息,檢查出了什么錯誤,直至成功。成功后會出現:
          BUILD SUCCESSFUL
          Total time: 5 seconds
          成功Build, 下一步就是準備索引了。

          直接解壓下載的文件即可。如果你要最新版本,按以下方法。
          程序代碼

          從Sourceforge.net獲得Weblucene的最新版本:
          匿名導出:
          cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/weblucene login
          cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/weblucene co weblucene
          sourceforge.net 的cvs 操作起來要稍微麻煩一些,必須先通過ssh username@cvs.sourceforge.net,
          ssh username@cvs.sourceforge.net
          把 CVS_RSH 設置為ssh,
          export CVS_RSH=ssh
          然后才能夠通過ext模式進行更新和提交,每次add、commit 操作都要輸入一次密碼:
          cvs -d:ext:username@cvs.sourceforge.net:/cvsroot/weblucene export -D now weblucene

          3. 準備Index
          ============
          (在這里要特別注意:在準備索引的時候要先檢查jdk的版本,1.3版本是出錯的,要1.4以上的才可以)
          weblucene中包含了一個簡單的 xml 文檔 /weblucene/doc/news_sample.xml
          關于xml的結構請參考:/weblucene/doc/weblucene_index.dtd
          你可以執行命令創建索引。

          創建索引使用IndexRunner 命令:位于 /weblucene/WEB-INF/classes/IndexRunner.class),

          參數格式:
          -i xml_url 輸入XML的URL
          -o output_dir 輸出索引的目錄

          注意:
          XML數據源將被索引到 $output_dir的 index 子目錄下,如果對一個舊的索引進行更新,
          舊索引將被備份到$output_dir 的 work 子目錄下,

          例子:
          在dump下面有個blog.xml,這是一些文章素材,你可以對其建立索引測試,也可以使用自己的語料建立索引。
          進入C:\Develop\tomcat4.1\webapps\weblucene\WEB-INF\classes,在這個目錄下面有一個IndexRunner的文件。在該目錄下面建立一個run.bat的文件,內容如下:
          程序代碼

          set LIB=C:\Develop\tomcat4.1\webapps\weblucene\webapp\WEB-INF\lib
          set SERVLETLIB=C:\Develop\tomcat4.1\common\lib
          set CLASSESLIB=C:\Develop\tomcat4.1\webapps\weblucene\webapp\WEB-INF\classes
          set XMLPATH=C:\Develop\tomcat4.1\webapps\weblucene\dump
          set LOGPATH=C:\Develop\tomcat4.1\webapps\weblucene\webapp\WEB-INF\var

          java -cp %CLASSESLIB%;%LIB%\java-getopt.jar;%LIB%\jdom.jar;%LIB%\log4j.jar;%LIB%\lucene.jar;%LIB%\xalan.jar;%LIB%\xercesImpl.jar;%SERVLETLIB%\servlet.jar;./ IndexRunner -i %XMLPATH%\blog.xml -o %LOGPATH%\blog

          每次需要執行索引的時間,在該目錄下輸入文件名直接執行或是圖形界面下雙擊該文件均可。
          成功后會出現:
          50 rows added Total time Use:0 second
          750 [main] INFO IndexRunner - Great! Indexing OK

          注意:確保路徑中沒有空格,一般tomcat4.1會目錄路徑上tomcat和4.1之前有空格。切記!

          3. 運行搜索測試
          ==============

          SearchRunner (位于 /weblucene/WEB-INF/classes/SearchRunner.class) 是一個命令行的索引測試工具

          格式:
          %java SearchRunner -i $weblucene_home_directory/WEB-INF/var/$dir_name/index \
          -f IndexName -k “query keywords”
          例如:
          還 是剛才的目錄,執行命令:java -cp ../lib/java-getopt.jar;../lib/jdom.jar;../lib/log4j.jar;../lib/lucene.jar;../lib/xalan.jar;../lib/xercesImpl.jar;../lib/servlet.jar;./ SearchRunner -i ../var/blog/index -f “FullIndex” -k “SOAP”

          當然也可以做成bat文件。
          程序代碼

          set LIB=C:\Develop\tomcat4.1\webapps\weblucene\webapp\WEB-INF\lib
          set SERVLETLIB=C:\Develop\tomcat4.1\common\lib
          set CLASSESLIB=C:\Develop\tomcat4.1\webapps\weblucene\webapp\WEB-INF\classes
          set XMLPATH=C:\Develop\tomcat4.1\webapps\weblucene\dump
          set LOGPATH=C:\Develop\tomcat4.1\webapps\weblucene\webapp\WEB-INF\var

          java -cp %CLASSESLIB%;%LIB%\java-getopt.jar;%LIB%\jdom.jar;%LIB%\log4j.jar;%LIB%\lucene.jar;%LIB%\xalan.jar;%LIB%\xercesImpl.jar;%SERVLETLIB%\servlet.jar;./ SearchRunner -i %LOGPATH%\blog\index -f “FullIndex” -k “SOAP”

          這樣就會出現搜索到的文章信息了。因為我們剛才建索引時,把索引建在了var/blog/目錄下,所以現在就要使用../var/blog/index,如果你剛才建立的不是這個目錄,記得修改。
          SOAP的含義就是關鍵詞,也就是你要搜索含java的文章。FullIndex就是有索引的項,你對那幾個字段建立了索引,都會寫在FullIndex這個字段里面。

          搜索結果將被打印到屏幕上:
          程序代碼

          — find 1
          score=0.48 http://www.javaws.com/snipsnap/space/2003-12-08#apache.axis
          .tcp.monitor>

          posted on 2006-08-30 14:06 xiaofeng 閱讀(404) 評論(0)  編輯  收藏 所屬分類: weblucene

          導航

          統計

          常用鏈接

          留言簿(2)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          收藏夾

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 兴城市| 吴旗县| 吴川市| 遂平县| 德钦县| 东兴市| 潍坊市| 明溪县| 介休市| 道真| 河源市| 白山市| 滨州市| 循化| 渑池县| 库伦旗| 响水县| 吉水县| 南充市| 永仁县| 包头市| 云梦县| 濮阳县| 随州市| 永顺县| 华安县| 庐江县| 黎城县| 阿克苏市| 新河县| 湘西| 木里| 罗江县| 阳山县| 交城县| 临澧县| 盐山县| 沂南县| 金华市| 临湘市| 湟中县|