集成 solr6.5.1到 tomcat7(8) 中 (解决java.lang.NoSuchMethodError问题)

♣下载solr安装包

♣安装solr

♣solr应用部署到tomcat下

♣配置web.xml

♣在tomcat7启动

♣改为在tomcat8启动

♣在自带的Jetty里启动

♣建立第一个Core


 安装环境:

 

 1.下载.  SOLR下载地址:http://archive.apache.org/dist/lucene/solr/

   官网:http://lucene.apache.org/solr/

   

 

 2.安装solr

    2.1  建立solrHome文件夹,路径随意,我的路径是E:/javaEdit/solrHome

    2.2  在solrHome中新建文件夹solrCore:

    2.3  从solr-6.5.1/server/solr下的把下面三个文件copy到solrHome中,如下图:

   

   

   2.4将solr-6.5.1\server\solr\configsets\basic_configs下的conf文件夹copy到solrCore中,如下图

   

   

3.solr应用部署到tomcat下

    3.1  在Tomcat文件夹webapps下,建立一个目录:

    

   拷贝Solr下面的server\solr-webapp\webapp里的所有文件到新建的目录下: 

    

   3.2添加需要的扩展依赖包

    3.2.1从\solr-6.5.1\server\lib\ext下将所有的jar包复制到tomcat的webapps下的solr项目的lib目录中

    

    3.2.2复制\solr-6.5.1\solr-6.5.1\server\lib下的metrics-先关的jar包到webapps下的solr项目中

    

   3.3添加log4j的配置文件

   从\solr-6.5.1\server\resources下将log4j配置文件复制到tomcat的webapps下的classes文件夹中,classes文件夹没有则新建一个

   

   

  4.配置web.xml

   配置web.xml指定solrHome的位置

   打开apache-tomcat-7.0.70\webapps\solr\WEB-INF\web.xml

   增加如下节点:

    <env-entry>
       <env-entry-name>solr/home</env-entry-name>
       <env-entry-value>E:/javaEdit/solrHome</env-entry-value>
       <env-entry-type>java.lang.String</env-entry-type>
    </env-entry>

   

   5.启动tomcat7

   浏览器中输入: http://localhost/solr/index.html

   若出现403的错误,修改solr项目中的web.xml,将169行左右的security-constraint代码注释掉

   

    

    若出现错误:java.lang.NoSuchMethodError: javax.servlet.ServletInputStream.isFinished()Z

    

    是tomcat7的lib下的servlet-api.jar下没有该方法。

    由于solr5.5.0及其以上版本部署在tomcat7下的时候,会报

 

    Java.lang.NoSuchMethodError: javax.servlet.ServletInputStream.isFinished()Z的错误,这个是serverlet3.1才有的方法
    最终搭配:solr5.5及其以上+tomcat8
                  solr5.4及其以下+tomcat7
    所以,只能换tomcat8或者降solr版本到5.5以下了

    

 

    改为在tomcat8下测试,注意换tomcat的时候要在环境变量里的CATALINA_BASE和CATALINA_HOME

    

    重启tomcat,浏览器中输入: http://localhost/solr/index.html ,可以看到solr界面,说明solr已经配置成功:

    

 

 6.建立第一个Core

   进入solr管理页面,点击左侧的core admin,然后点击add core,在name 和instanceDir下都输入solrCore,点击add core即可 

 

 进入到solrHome/solrCore目录,此时会发现多了一个data文件夹和一个properties文件,如图

 

   solr界面, 在左侧即可看见刚刚建立的core 

 

   

posted @ 2018-03-02 22:36  思维焦点  阅读(1653)  评论(0编辑  收藏  举报