mmseg最新版本为1.9.1 http://code.google.com/p/mmseg4j/, 最高仅支持solr4.5.1
所以这里solr用的是4.5.1版本(已经出到4.6.0版本了)http://archive.apache.org/dist/lucene/solr/4.5.1/
tomcat使用的是6版本(懒得下7,所以直接用6好了),下面开始整合:
1、下载solr后解压,并将solr-4.5.1\example\webapps目录下的solr.war复制到tomcat的webapps目录下;
2、运行tomcat,报错,停掉,这里tomcat下的webapps下会有solr.war的解压目录solr,将solr.war文件删除;
3、将solr-4.5.1\example\solr目录复制到tomcat的webapps\solr目录下(也即webapps\solr\solr,此步骤不做或者放在其他目录也行);
4、将solr-4.5.1\example\lib\ext目录下的jar包复制到tomcat的lib目录下;
5、复制solr-4.5.1\example\resources\log4j.properties至tomcat的webapps\solr\WEB-INF目录下
6、修改tomcat下webapps\solr\WEB-INF\web.xml,增加如下(视第三步中solr的目录修改路径,可以为绝对路径):
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>../webapps/solr/solr</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
至此,solr成功部署至tomcat6,可以跑下tomcat看下效果(http://localhost:8080/solr/#/collection1)
下面开始整合mmseg1.9.1:
1、将mmseg三个jar包复制至solr的lib包下(webapps\solr\WEB-INF\lib)、
2、编辑solr如下文件webapps\solr\solr\collection1\conf\schema.xml(视上面第3步的目录而定),增加:
<fieldType name="textComplex" class="solr.TextField" >
<analyzer>
<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="complex"/>
</analyzer>
</fieldType>
<fieldType name="textMaxWord" class="solr.TextField" >
<analyzer>
<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="max-word"/>
</analyzer>
</fieldType>
<fieldType name="textSimple" class="solr.TextField" >
<analyzer>
<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="simple"/>
</analyzer>
</fieldType>
至此,mmseg1.9.1整合完成,下面看效果:
本文参考了:http://blog.csdn.net/yangaming/article/details/8197241
http://javabigcat.iteye.com/blog/1782163