如果再能有机会听你说说你的故事,我还能怎么为你呢?

大家好,,我是一网菜鸟网()站长,网站目前正在维护中,今天在这里做一下Solr4.x和mmseg41.9.1集成的详细文章说明,包括mmseg4j1.9.1的一些源码的修改,大家有什么不懂的可以给我留言或者到我群(225223397)内一起导论,我邮箱sklll@126.com。

前面我们讲了solr4.8.1和tomcat7集成,这里再讲一下中文分词,中文分词最简单集成的是IK分词器,但是IK分词器似乎不是那么理想,所以我考虑集成mmseg4j。

由于solr的版本比较高,所以我们也选择版本较高的mmseg4j,这里选用的是mmseg4j1.9.1,具体下载我就不说了,下载一个下面的包就可以了。

解压mmseg4j,并将\mmseg4j-1.9.1\dist目录下的jar包全部放到\server\solr\WEB-INF\lib下,再到\home\collection1\conf下找到schema.xml,加上如下代码:

<fieldType name="text_mmseg4j_complex" class="solr.TextField" positionIncrementGap="100" ><analyzer><tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="complex" dicPath="dic"/></analyzer></fieldType><fieldType name="text_mmseg4j_maxword" class="solr.TextField" positionIncrementGap="100" ><analyzer><tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="max-word" dicPath="dic"/></analyzer></fieldType><fieldType name="text_mmseg4j_simple" class="solr.TextField" positionIncrementGap="100" ><analyzer><!–<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="simple" dicPath="n:/OpenSource/apache-solr-1.3.0/example/solr/my_dic"/>–><tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="simple" dicPath="dic"/></analyzer></fieldType><!– mmseg4j–>

这时候运行tomcat,访问solr选择分词就会报如下错误:

我们这里需要修改solr的源代码,找到\mmseg4j-1.9.1\mmseg4j-analysis\src\main\java\com\chenlb\mmseg4j\analysis\MMSegTokenizer.java,修改如下图:

修改后运行mvn clean package -DskipTests进行打包,这里网上也有一些资料,但是都没有说具体的怎么打包,对于不熟悉maven的人来说有一定困难。

maven安装好了后,只需要输入上面一行命令回车就行了。至于maven的安装我就不说了。

这时候\mmseg4j-1.9.1\mmseg4j-analysis包下回多了一个文件夹,打开它就可以看到新的jar包了,把项目中的包替换掉就可以了。

到这里就都解决了,重启启动tomcat,运行界面如下:

大功告成了,下一节,我们再讲和其他中文分词器集成。

我的网站目前还在研发中,欢迎关注下,网站名称:一网菜鸟网,网址:sklll.com 敬请关注

赚钱之道很多,但是找不到赚钱的种子,便成不了事业家。

如果再能有机会听你说说你的故事,我还能怎么为你呢?

相关文章:

你感兴趣的文章:

标签云: