solr6.3.0 定时增量更新配置·真

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/KanShiMeKan/article/details/53510365
换到一个新项目,为了与原来做的solr5.5.2区分开,于是来升级了一个版本,导致增量更新又出问题,折腾一下午,终于搞定了。

第一步:从官网下载solr以后,将对应的solr-dataimporthandler-6.3.0.jarsolr-dataimporthandler-extras-6.3.0.jar放到solr-6.3.0\server\solr-webapp\webapp\WEB-INF\lib目录下。
第二步:将dataimport.properties放在solr-6.3.0\server\solr\conf路径下。
第三步:修改solr-6.3.0\server\solr-webapp\webapp\WEB-INF\web.xml,在<servlet>前添加

 <listener>    
    <listener-class>      org.apache.solr.handler.dataimport.scheduler.ApplicationListener    
    </listener-class>    
  </listener>  

这时候运行solr会出错:

2016-12-07 19:40:49.372 WARN  (main) [   ] o.e.j.w.StandardDescriptorProcessor Could not instantiate listener org.apache.solr.handler.dataimport.scheduler.ApplicationListener
java.lang.ClassNotFoundException: org.apache.solr.handler.dataimport.scheduler.ApplicationListener

此时需要一个dataimportscheduler.jar,很多人都说到了,但是很多旧版本都用不了,会报找不到方法异常,如下:

2016-12-07 19:38:38.133 WARN  (main) [   ] o.e.j.d.DeploymentManager Unable to reach node goal: started
java.lang.NoSuchMethodError: org.apache.solr.core.SolrResourceLoader.getInstanceDir()Ljava/lang/String;
    at org.apache.solr.handler.dataimport.scheduler.SolrDataImportProperties.loadProperties(SolrDataImportProperties.java:31)

于是想到几个月前一位大神给我的dataimportscheduler.jar的源代码,自己添加进项目,经过检查,发现SolrResourceLoadergetInstanceDir()方法被替换成了getInstancePath(),修改代码以后重新打包,添加进项目就能正常工作了。

附上给我代码的大神的资源下载地址:http://download.csdn.net/detail/ljsososo/9486023#comment

6.3.0能用的dataimportscheduler.jar源代码的下载链接。

增量导入语句请查看我的前一篇文章solr5.5.2 增量索引配置方法

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页