1. 程式人生 > >SOLR原始碼在Myeclipse/eclipse下搭建(並在tomcat下完美執行)

SOLR原始碼在Myeclipse/eclipse下搭建(並在tomcat下完美執行)

Solr原始碼在Myeclipse/eclipse下搭建

(這裡主要講在Myeclipse中文版下搭建

Ps:經過一週時間的研究,終於把solr的原始碼成功的匯入到myeclipse中執行和開發,折騰之後,寫了這篇文章,將點點經驗分享給大家。

1. 下載並按裝Ant

    下載地址:

    Ant環境變數配置:

    ANT_HOME: ant的解壓目錄的l路徑

    Path: %ANT_HOME%\bin

在cmd中輸入ant -v, 有下圖結果表示成功安裝

這裡簡單易安,就不多說

2. 下載Solr原始碼

    下載地址:

下載後的原始碼包字尾為solr-*.*.*-src.tgz

3. 用Ant把Solr原始碼轉換為MyEclipse Web專案

    將原始碼解壓,進入Solr原始碼的根目錄


在cmd中輸入ant eclipse, 按回車後你將會看到如下畫面, 如果你的c:\Users\使用者名稱\.ant\lib下沒有ivy jar包的話

此時你按它說的那樣需輸入ant ivy-bootstrap命令下載ivy, 當然你也可以直接吧ivy jar包直接放入c:\Users\使用者名稱\.ant\lib

    下載好後再輸入剛才的ant eclipse命令,回車後你會看到一堆資訊,此時表明ant已經再幫你生成專案了。期間會等一段時間,在這期間也可能會出現fault資訊,而且就是它可能造成你很久都看不到成功生成,在我目前遇到的情況下的解決辦法是,再輸入一遍命令,之後就看你的點了,或者你有更好的解決辦法。

你也可以更換低版本的ant和solr 原始碼試試

PS:如果一直生成不成功,可能與你的網路環境有關,這裡大概要執行2h左右。

當你看見如下介面證明你編譯成功了


4. 檢視編譯後的檔案

出現了.classpath和.project檔案

 

5. 將編譯檔案匯入Myeclipse/eclipse

    開啟檔案選擇匯入,然後選擇General 的 現有專案倒入到工作空間

    匯入到eclipse,packageexplore 如下:

6. 把Myclipse/eclipse普通專案轉化為web專案

    將編譯好的solr工程匯入eclipse,後右鍵點選Properties,選中Project Facets,如圖所示

   

選擇OK後,就轉換Solr的WEB工程了,這是有些xml檔案會出現錯誤的紅叉叉,這是你安裝的java JDK 版本的原因(這裡推薦用JDK 1.7)

7. 將solr 配置到tomat中

    (1) 安裝tomcat,網上教程比較多,自己搜尋安裝就好了。(推薦使用tomcat6或者tomcat7版本)

    (2) 將solr在comcat中配置:在tomcat-7.0.53\conf\Catalina\localhost目錄下新建solr.xml檔案,內容如下:<?xmlversion="1.0" encoding="UTF-8"?>  <ContextdocBase="${catalina.home}/webapps/solr" debug="0"crossContext="true" > <Environment name="solr/home" type="java.lang.String"value="${catalina.home}/solr" override="true" />  </Context>

 將\solr-4.7.2\example目錄下的solr資料夾複製到tomcat-7.0.53目錄下,作為solr的home目錄;

    (3) 在我們編譯好的原始碼中新增依賴包。

    下載solr的solr-4.7.2.tgz包解壓出來,將解壓的檔案路徑中的so4lr-4.7.2\e22xample\webapps\solr.war的包解壓出來,包的的目錄檔案如下圖


將所有檔案拷貝到我們導進eclipse的工程檔案的\solr\WebRoot目錄中,然後將solr-4.7.2.tgz目錄中的solr-4.7.2\solr-4.7.2\example\lib\ext下的5個包拷貝到工程檔案的\solr\WebRoot\WEB-INF\lib目錄下;再將solr-4.7.2.tgz目錄中的solr-4.7.2\solr-4.7.2\example\resources路徑下的log4j.properties檔案複製到工程檔案的solr\WEB-INF\classes目錄下(classes目錄如果不存在需要您手動建立)。

8. 將solr的工程在tomcat中執行

    將solr的工程的屬性開啟,選擇專案構面      web;在Context Root中修改web context-root的值為/solr,然後應用確定。等待構建完成後,刪除solr工程,再重新匯入一次(不這樣做可能會出錯)。

    匯入成功後,選著我們安裝的Tomcat和我們安裝的JDK進行編譯執行,無報錯,我們用瀏覽器開啟 http://localhost:8080/solr/admin 出現下面介面:

表示我們已經成功的編譯倒入成功了。

本文參考:

上面的文章都有缺陷,我都沒有正常的執行,自己琢磨後,發表這篇文章。

PS:凡是借鑑和引用本文章,請標註出處。