一、下载Solr4.10.2
我们以Windows版本为例,solr-4.10.2.zip是目前最新版本,下载地址:
http://www.apache.org/dyn/closer.cgi/lucene/solr/4.10.2
二、 Solr安装:
1、解压solr-4.10.2.zip
2、将 solr-4.10.2/example/webapps/solr.war 拷贝到Tomcat的webapps目录下(如D:\apache-tomcat-7.0.57\webapps),重新启动Tomcat 并访问http://localhost:8080/(目的是解压solr.war),然后你会发现solr-4.10.2/example/webapps/下多了一个Solr的目录。
3、在D:\apache-tomcat-7.0.57\webapps\solr创建solr_home目录:
4、修改D:\apache-tomcat-7.0.57\webapps\solr\WEB-INF\web.xml 添加如下配置(apache-tomcat-7.0.56/webapps/solr/WEB-INF/web.xml)
配置solr home的地址:
<env-entry> <env-entry-name>solr/home</env-entry-name> <env-entry-value> D:\apache-tomcat-7.0.57\webapps\solr\solr_home </env-entry-value> <env-entry-type>java.lang.String</env-entry-type> </env-entry>
5、复制solr-4.10.2的solr-4.10.2/example/solr/ 所有内容copy到solr_home
6、复制solr-4.10.2的solr-4.10.2/example/lib/ext目录下所有文件
到 apache-tomcat-7.0.56/webapps/solr/WEB-INF/lib
复制solr-4.10.2的example/resources目录下的log4j.properties文件到Tomcat的lib下;
启动Tomcat。
访问:http://localhost:8080/solr 进入到管理界面
三、 集成ikanalyzer中文分词器
1、在谷歌http://code.google.com/p/ik-analyzer/downloads/list下载IK Analyzer 2012FF_hf1解压后得到如下目录结构:
2、将IKAnalyzer2012FF_u1.jar包copy到 apache-tomcat-7.0.56/webapps/solr/WEB-INF/lib 下。
在apache-tomcat-7.0.56/webapps/solr/WEB-INF/下创建classes目录
将IKAnalyzer.cfg.xml、stopword.dic copy到 apache-tomcat-7.0.56/webapps/solr/WEB-INF/classes
3、修改apache-tomcat-7.0.56/webapps/solr/solr_home/collection1/conf/schema.xml
在第一个节点内添加如下配置:
<fieldType name="text_ik" class="solr.TextField"> <analyzer type="index" isMaxWordLength="false" class="org.wltea.analyzer.lucene.IKAnalyzer"/> <analyzer type="query" isMaxWordLength="true" class="org.wltea.analyzer.lucene.IKAnalyzer"/> </fieldType>
将对应需要用ik分词的字段的type改为以上定义的name值 text_ik(大约120行处):
<field name="sku" type="text_en_splitting_tight" indexed="true" stored="true" omitNorms="true"/> <field name="name" type="text_ik" indexed="true" stored="true"/> <field name="manu" type="text_ik" indexed="true" stored="true" omitNorms="true"/>
配置完成,重启tomcat并访问http://localhost:8080/solr。 发现左边可以选择分词器
根据我们配置的中文分词器,选择Manu:
分析一个熊孩子造的句子:小明吃完水果然后喝水
发现非常智能的构建出关键词了。