1,运行环境:
JDK:1.7
容器:TOMCAT6.0 下载(http://tomcat.apache.org/download-60.cgi)
solr:solr-4.7.0 下载(http://www.apache.org/dyn/closer.cgi/lucene/solr/4.7.0)
分词器:mmseg4j 介绍(http://code.google.com/p/mmseg4j/ )
词库:soguo-dic 1.9以下的需要词库,下载(http://code.google.com/p/mmseg4j/downloads/detail?name=sogou-dic-utf8.zip&can=2&q= )
2,TOMCAT安装
我下载的的是TOMCAT6.0安装版的,安装没什么特别的,不作特别介绍,
下面称tomcat根目录使用:${catalina_home}。
3,SOLR安装
直接解压缩就行了,我解压路径为D:\apache\solr-4.7.0,
下称为${solr_unzip_home}。
4,配置安装:
4.1,将${solr_unzip_home}\dist\solr-4.7.0.war拷贝到${catalina_home}\webapps下,并更名为solr.war。
4.2,新建文件夹(位置随便选),目录下称${solr_web_base}。将${solr_unzip_home}\example\solr文件夹拷贝到${solr_web_base}中。
4.3,配置环境变量solr.home:
1),基于环境变量
打开开始菜单--> Apache Tomcat6.0 --> Configure Tomcat,出现配置界面,
在Java选项卡中Java Options下添加一句话:-Dsolr.solr.home=${solr_web_base}\solr ,该路径下称:${solr_home}
2),基于当前路径
需要在${solr_web_base}目录下去启动tomcat,Solr查找./solr,因此在启动时候需要切换到${solr_web_base}
3),基于JNDI
在${catalina_home}\config文件夹下新建Catalina文件夹,然后在Catalina文件夹下新建localhost文件夹,在该文件夹下新建solr.xml。
其中内容如下:
<Context docBase="${catalina_home}\webapps\solr" debug="0" crossContext="true" >
<Environment name="solr/home" type="java.lang.String" value="${solr_home}" override="true" />
</Context>
4.4,打开浏览器,输入http://localhost:8080/solr/admin/(其中的端口根据情况输入 默认是8080) 就可以访问solr服务了
4.5,服务能正常访问,表示配置成功。
5,配置分词,在solr中加入中文分词。
1,下载分词器(http://code.google.com/p/mmseg4j/downloads/detail?name=mmseg4j-1.9.1.zip),兼容solr4.3版本
2,解压,将mmseg4j-1.9.1\dist\下的所有jar包放到${catalina_home}\webapps\solr\WEB-INF\lib目录下。
3,下载词库(http://code.google.com/p/mmseg4j/downloads/detail?name=sogou-dic-utf8.zip&can=2&q=),将里面的words.dic文件拷贝到${solr_home}\dic
4,修改${solr_home}\collection1\conf\schema.xml
在types标签内增加:
<fieldtype name="textComplex" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="complex" dicPath="dic"></tokenizer>
</analyzer>
</fieldtype>
<fieldtype name="textMaxWord" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="max-word" dicPath="dic"></tokenizer>
</analyzer>
</fieldtype>
<fieldtype name="textSimple" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="simple" dicPath="dic"></tokenizer>
</analyzer>
</fieldtype>
5,重启tomcat。访问:http://localhost:8080/solr/#/collection1/analysis可以看 mmseg4j 的分词效果。
在 Analyse Fieldname / FieldType下拉框中选择Fields 下的 name,然后在应用输入 complex。