关于Solr不想多做介绍,网上介绍的知识还是挺多的。我们直入正题,如何搭建一个学习Solr的环境,由于本人也是刚学solr,因此我们 就step by step... 边做边写边记


一、准备工具

  1.      下载Solr,以目前最新版solr-4.5为例
  2. 准备servlet容器,Tomcat,Jetty,Resin之类。以Tomcat7为例

二、开始动手
  1.      将solr解压出来,在solr-4.5.0\example\webapps下,有一个solr.war,将其copy至tomcat/webapps目录下,切记不要更改war包名字。启动tomcat,发现报错,停掉Tomcat.
  2. 将slf4j,commons-loggin.jar加入到apache-tomcat-7.0.42\webapps\solr\WEB-INF\lib下。 solr自身的war包中缺少这2个jar包,有些新同学会问如何发现这问题,你启动tomcat时候,出错,查看日志便知。
  3. 再次启动Tomcat.发现仍然有问题,错误提示如下:这说明是加载不了solr配置文件。
  4. 配置solr.home.  我选择的方式是JNDI,在apache-tomcat-7.0.42\webapps\solr\WEB-INF下面的web.xml中加上这么一段
     <env-entry>
           <env-entry-name>solr/home</env-entry-name>
           <env-entry-value>E:\solr_home</env-entry-value>
           <env-entry-type>java.lang.String</env-entry-type>
        </env-entry>
    将E:\solr_home 改为你自己的目录,然后将solr-4.5.0\example\solr复制到你的${solr_home}
  5. 再次启动Tomcat.发现报了这样一个异常:error loading class solr clustering clusteringcomponent。仔细查看,是在create core:collection1时发生的,于是将这个错误Google一下。发现在wiki也有提出了这样一个问题,wiki地址是:http://www.gossamer-threads.com/lists/lucene/java-dev/209751  本人英文不好,大致瞄了一下,意思问题是:solrconfig.xml中,默认开启了集群,关掉即可,至于集群的问题,先不是咱们讨论的范围,先解决掉这个问题吧。
  6. 在${solr_home}/collection1/conf下,打开solrconfig.xml,搜索solr.clustering.enabled.果然在1400行发现了
      <searchComponent name="clustering"
                       enable="${solr.clustering.enabled:true}"
                       class="solr.clustering.ClusteringComponent" >
    将true改为false,再次启动tomcat,一切正常。
  7. 访问http://localhost:8080/solr/   终于打开了管理界面。至此,最初步的环境,我们 就搭建成功了

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐