个人技术博客:http://demi-panda.com
搜索引擎相关开源框架,一开始是lucene,这两天看了看solr,下了一个最新版本,配置了下,遇到一些问题。解决了一些,还有一些没有解决,这里将我的一些已经解决的问题,分享给大家。
1、下载solr1.4 http://apache.freelamp.com/lucene/solr/ (注:这里有及时solr的最新版本)
2、下载IKAnalyzer3.2.3Stable http://code.google.com/p/ik-analyzer/downloads/list (注:这里有IKAnalyzer及时的最新版本,也可附件直接下载)
3、1.4以前的版本不知道是否要扩展BaseTokenizerFactory 1.4的版本必须扩展BaseTokenizerFactorypackage com.analysis.util;
import java.io.Reader;
import org.apache.lucene.analysis.Tokenizer;
import org.apache.solr.analysis.BaseTokenizerFactory;
import org.wltea.analyzer.lucene.IKAnalyzer;
/**
* 中文分词
* @author Denghaiping
* @date 2010-8-14
*/
public class ChineseTokenizerFactory extends BaseTokenizerFactory
{
/**
* 重写父类方法
*/
public Tokenizer create(Reader input) {
return (Tokenizer)new IKAnalyzer().tokenStream("text", input);
}
}
5、然后修改schema.xml,粗体为修改部分
<fieldType name="text" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<!-- 默认配置
<tokenizer class="solr.WhitespaceTokenizerFactory"/> -->
<!-- 添加IKAnalyzer分词 -->
<tokenizer class="com.analysis.util.ChineseTokenizerFactory" isMaxWordLength="false"/>
<!-- in this example, we will only use synonyms at query time
<filter class="solr.SynonymFilterFactory" synonyms="index_synonyms.txt" ignoreCase="true" expand="false"/>
-->
<!-- Case insensitive stop word removal.
add enablePositionIncrements=true in both the index and query
analyzers to leave a 'gap' for more accurate phrase queries.
-->
<filter class="solr.StopFilterFactory"
ignoreCase="true"
words="stopwords.txt"
enablePositionIncrements="true"
/>
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="1"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.SnowballPorterFilterFactory" language="English" protected="protwords.txt"/>
</analyzer>
<analyzer type="query">
<!-- 默认配置
<tokenizer class="solr.WhitespaceTokenizerFactory"/> -->
<!-- 添加IKAnalyzer -->
<tokenizer class="com.analysis.util.ChineseTokenizerFactory" isMaxWordLength="true"/>
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.StopFilterFactory"
ignoreCase="true"
words="stopwords.txt"
enablePositionIncrements="true"
/>
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="1"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.SnowballPorterFilterFactory" language="English" protected="protwords.txt"/>
</analyzer>
</fieldType>
6、将它打包放入solr.war中同时还有IK的jar包。如果你不想打包,请去附件下载已经打好的包。或者直接放IK的jar包与所打的包放入apache-tomcat-6.0.26\webapps\solr\WEB-INF\lib下
分享到:
相关推荐
IKAnalyzer是一个开源的,基于java语言开发的轻量级的中文分词工具包。此包兼容solr7.x
tomcat8.5+solr7+IKAnalyzer5, 已经整合IKAnalyzer中文分词, 直接使用即可
solr4.10.3+IK Analyzer For Solr4.x 发现资源不太好找,或者比较“贵 ” 自己发一个
solr配置ikanalyzer分词文件以使用说明
此为solr8的ikanalyzer中文分词包
IKAnalyzer中文分词器本身已经不支持最新的solr 5,集成到solr中分词会报错,这里将解决了solr 5支持问题的最新IK包共享出来,希望能帮到各位! 附上IK在schema.xml中的配置: <fieldType name="text_ik" class=...
solr分词器IKAnalyzer,IK Analyzer 2012FF_hf1和schama配置文件
Window下Solr1.4安装部署 z
Solr 1.4 Enterprise Search Server.pdf
对solr1.4提供接口实现 使用IK分词器,应为该集群使用到的solr版本为4.10.3-cdh5.7.5,所以使用的 IK 包为IKAnalyzer2012FF_u1.jar,如果是3x的solr,使用IKAnalyzer2012_u6.jar solr-4.10.3下载地址:...
支持solr5以上的ikanalyzer包和配置文件
solr5.0.0 所需jar包,包含 IKAnalyzer-5.0 ,solr-analyzer-extra-5.1.0 , solr-dataimportscheduler-1.1.1,solr-dataimporthandler-5.0.0 ,solr-dataimporthandler-extras-5.0.0
tomcat8.5+solr7+IKAnalyzer5+ikpinyin直装版, 直接启动tomcat访问地址即可, 相关分词器已经配好, 详情见readme
ik-analyzer分词器,支持solr5-5.x
solr5 IK-Analyzer中文分词。jar里面有IKAnalyzer.cfg.xml、stopword.dic
对solr1.4提供接口实现 使用IK分词器,应为该集群使用到的solr版本为4.10.3-cdh5.7.5,所以使用的 IK 包为IKAnalyzer2012FF_u1.jar,如果是3x的solr,使用IKAnalyzer2012_u6.jar 具体操作如下: 引用 1.在/opt/...
solr中文分词jar包ik-analyzer 含class配置 ik-analyzer-7.5.0
solr分词 IKAnalyzer2012FF_hf1.rar,solr中文分词搜索
solr6对应的IKAnalyzer分词器jar包,使用方法: 1. 添加分词器的jar文件:在文件夹`contrib`下新建一个文件夹`rd-lib`,并将`IKAnalyzer2012_u6.jar`拷贝进来,这个文件夹用来存放第三方jar文件,后面做数据导入时候...
Solr是一个全文检索服务器,基于Lucene3.5开发的,我们可以在solr的基础上进行定制化的开发。新手学习记录了学习过程为后来者提供个参考吧。