solr安裝與配置

前提準備:
環境必須是tomcat7.0以上,jdk7.0以上,jre7.0以上,且配置好環境變量。
從官網下載最新版本
一、解壓並將solr-4.10.2/example/webapps 下的solr.war拷貝到webapps下手動啓動tomcat解壓solr.war。
二、將apache-tomcat-7.0.42/webapps/solr/WEB-INF下的web.xml中如下註解打開並配置solr home的位置指向

三、在web.xml中設置
    <env-entry>
       <env-entry-name>solr/home</env-entry-name>
       <env-entry-value>...../solr-4.10.2/examle/solr</env-entry-value>
       <env-entry-type>java.lang.String</env-entry-type>
    </env-entry>
此中方式在部署時,不方便,需打包前給據部署環境修改。

四、拷貝solr-4.10.2/example/lib/ext下的全部jar 到apache-tomcat-7.0.42/webapps/solr/WEB-INF/lib/下java

五、apache-tomcat-7.0.42/webapps/solr/WEB-INF下新建一個classes文件夾,將solr-4.10.2/example/resources下的log4j.properties拷貝過去web

六、啓動tomcat成功後訪問http://localhost:8080/solr/就能看到apache

1,Exception in thread "main" org.apache.solr.common.SolrException: Unknowndocument router '{name=implicit}'tomcat

這個是SolrJ的版本不一致 app

2,we are not the leader webapp

這個好像是因爲本身在本機起了個zookeeper 而後註冊上去的節點是127.0.1.1:xxx8983這個坑了!router

解決mmseg4j-1.9.1與solr-4.10.2兼容問題xml

Requests: 4232769(682/s),Fetched: 4232767 (682/s), Skipped: 0, Processed: 2116383(341/s)ip

Started: about 2 hours agoci

feteched的值爲 0 時。

 該緣由是源碼的一個bug引發的,須要修改上面下載的mmseg4j-analysis-1.9.1.zip解壓後的mmseg4j-analysis目錄下的類:MMSegTokenizer.java,修改reset()方法並加上下面註釋中的這一句

public void reset() throws IOException {

    //lucene 4.0

    //org.apache.lucene.analysis.Tokenizer.setReader(Reader)

    //setReader 自動被調用, input 自動被設置。

    super.reset();   //加這一句

    mmSeg.reset(input);

  }

修改後運行mvn clean package -DskipTests進行打包獲得最新的mmseg4j-analysis-1.9.1.jar 並替換Tomcat下的solr下的WEB-INF/lib下的mmseg4j-analysis-1.9.1.jar。

相關文章
相關標籤/搜索