Packaging is always "interesting":

It's in ./contrib/analysis-extras/lucene-libs/lucene-analyzers-smartcn-5.2.0.jar

and you'll have to either move it to a place "known" by Solr or set up
a <lib....
directive in solrconfig.xml.

I used this:
 <tokenizer 
class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/>

Best,
Erick


On Sat, Jun 27, 2015 at 10:59 AM, Ming Liang <upz...@gmail.com> wrote:
> I am using Solr-5.2.1
> I tried to add a field type named "text_chinese"  to the schema.xml of the
> given guide example "techproducts":
>
>
> <fieldType name="text_chinese" class="solr.TextField"
>            positionIncrementGap="100">
>     <analyzer>
>         <tokenizer class="solr.HMMChineseTokenizerFactory"/>
>         <filter class="solr.StopFilterFactory"
>                 words="org/apache/lucene/analysis/cn/smart/stopwords.txt"/>
>         <filter class="solr.PorterStemFilterFactory"/>
>     </analyzer>
> </fieldType>
>
> when I start "techproducts" with command "bin/solr -e techproducts"
>
> I got error:
>
> Waiting to see Solr listening on port 8983 [/]
>
> Started Solr server on port 8983 (pid=7232). Happy searching!
>
> Setup new core instance directory:
>
> ........./solr-5.2.1/example/techproducts/solr/techproducts
>
> Creating new core 'techproducts' using command:
>
> http://localhost:8983/solr/admin/cores?action=CREATE&name=techproducts&instanceDir=techproducts
>
> *Failed to create core 'techproducts' due to: Error CREATEing SolrCore
> 'techproducts': Unable to create core [techproducts] Caused by:
> solr.HMMChineseTokenizerFactory*
>
> and I found the following logs in log file:
> solr-5.2.1/example/techproducts/logs/solr.log
>
> Caused by: java.lang.ClassNotFoundException: solr.HMMChineseTokenizerFactory
>
> at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
>
> at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>
> at java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:810)
>
> at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>
> at java.lang.Class.forName0(Native Method)
>
> at java.lang.Class.forName(Class.java:348)
>
> at
> org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:475)
>
> ... 44 more
> I have tried to change
>
> <tokenizer class="solr.HMMChineseTokenizerFactory"/>
>
> to
>
> <tokenizer 
> class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/>
>
> because I found a class named HMMChineseTokenizerFactory in package
> org.apache.lucene.analysis.cn.smart
> but I the class is still not found:
>
> Caused by: java.lang.ClassNotFoundException:
> org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory
> at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
> at java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:810)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
> at java.lang.Class.forName0(Native Method)
> at java.lang.Class.forName(Class.java:348)
> at
> org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:475)
> ... 44 more
>
> thanks

Reply via email to