Solr安装于Tomcat以及配置

本文档记录了一位Solr新手在Windows上安装和配置Solr的过程,包括准备JDK和Tomcat,从官方地址下载Solr,将solr.war文件部署到Tomcat的webapps目录下,启动Tomcat,修改web.xml配置Solr Home,以及解决由于源码bug导致的问题,涉及到对MMSegTokenizer.java的修改和重新打包jar文件。
摘要由CSDN通过智能技术生成

     对于出入Solr新手的我来说,百度了各种大神的Solr安装和配置,做个笔记。基于windows以下是我测试环境:tomcat 6.0 、 JDK 1.6 、 solr-4.5.0。

以测试环境为例:

一、准备工作

     1.本机的JDK(常用的1.6版本即可,或者更高)

     2.轻量级的应用服务器Tomcat(6.0版本或者更高)


二、下载文件

     1.Solr下载地址:点击打开链接

     2.Tomcat下载地址:百度一大把,我就不废话了。


三、安装步骤

     1. 首先,下载完Solr之后,找到 solr-4.5.0/example/webapps 下的 solr.war 拷贝到tomcat 6.0 底下的webapps下后,手动启动tomcat,

         tomcat会自动解压 solr.war。

         注:在tomcat -> bin 中找到 startup.bat ,双击启动即可

     2. 然后,将tomcat6.0 / webapps/solr/WEB-INF 下的web.xml 中以下注解打开并配置solr home 的位置指向解压后的solr地址:

         E:\solr\solr-4.5.0\example\solr

        

         
    
   
   
       
    
    
     
     solr/home
    
    
       
    
    
     
     E:\solr\solr-4.5.0\example\solr
    
    
       
    
    
     
     java.lang.String
    
    
    
   
   
         

     3. 拷贝solr-4.5.0/example/lib/ext 下的所有jar到tomcat 6.0/webapps/solr/WEB-INF/lib下。
     4. tomcat 6.0/webapps/solr/WEB-INF下新建一个classes文件夹,将solr 4.5.0/example/resources的log4j.properties拷贝到classes文件夹中。

     5. 到tomcat 6.0下bin中找到startup.bat ,启动tomcat,浏览器访问:http://localhost:8080/solr/ 就能看到solr管理界面。
  
四、常见问题
     
      如下是百度之后,一些前辈遇到的问题。

     1.   问题: Exception in thread "main" org.apache.solr.common.SolrException: Unknown document router '{name=implicit}'
答案:这个是SolrJ的版本不一致
2. 问题:we are not the leader
答案:这个好像是由于自己在本机起了个zookeeper 然后注册上去的节点是127.0.1.1:xxx8983这个坑了!
      3.   问题:解决mmseg4j-1.9.1 与 solr-4.10.2兼容问题:
                   Requests: 4232769(682/s), Fetched: 4232767 (682/s),  Skipped: 0,  Processed: 2116383(341/s)
                  Startedabout 2 hours ago
            
             答案: 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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值