Actually, I meant to say I have my Tokenizer jars in solr/lib.
I have the jars that my Tokenizer jars depend in lib/ext,
as I wanted them to be loaded only once per container
due to their internal description.  Bad idea?

-kuro

> From: Teruhiko Kurosaka 
> Sent: Wednesday, October 14, 2009 4:28 PM
> To: solr-user@lucene.apache.org
> Subject: Right place to put my Tokenizer jars
> 
> I have my custom Tokenizer and TokenizerFactory in a jar, and 
> I've been putting it in example/lib/ext. and it's been 
> working fine with Solr 1.3. 
> 
> This jar uses SLF4J as a logging API, and I had the SLF4J 
> jars in the same place, example/lib/ext.
> 
> Because Solr 1.4 uses SLF4J too and have it builtin, I 
> thought I wouldn't need to have another set of the same jars, 
> I removed them from example/lib/ext.  Then, when my 
> TokenizerFactory is run, I've got a NoClassDefFoundError error.
> 
> This error can be fixed by putting another set of SLF4J jars 
> in example/lib/ext, but I don't understand why.
> After all, my jar can access Lucene and Solr APIs whose jars 
> resides elsewhere than example/lib/ext.  Why only SLF4J jars 
> must be duplicated and exist in example/lib/ext?
> Why SLF4J jars are special? Is this somethng to do with the 
> fact that SLF4J jars are needed at the static initialization 
> time? What is the correct place to put my Tokenizer(Filter) jars?
> 
> -kuro 
> 

Reply via email to