Could not find a suitable constructor in
org.apache.lucene.analysis.cjk.CJKAnalyzer. Classes must have either one
(and only one) constructor annotated with @Inject or a zero-argument
constructor that is not private.
at org.apache.lucene.analysis.cjk.CJKAnalyzer.class(CJKAnalyzer.java:46)
at
org.elasticsearch.index.analysis.AnalyzerProviderFactory.create(AnalyzerProviderFactory.java:1)
at
org.elasticsearch.common.inject.assistedinject.FactoryProvider2.initialize(FactoryProvider2.java:161)
at
org.elasticsearch.index.analysis.AnalysisModule.configure(AnalysisModule.java:299)
Could not find a suitable constructor in
org.apache.lucene.analysis.en.EnglishAnalyzer. Classes must have either one
(and only one) constructor annotated with @Inject or a zero-argument
constructor that is not private.
at
org.apache.lucene.analysis.en.EnglishAnalyzer.class(EnglishAnalyzer.java:48)
at
org.elasticsearch.index.analysis.AnalyzerProviderFactory.create(AnalyzerProviderFactory.java:1)
at
org.elasticsearch.common.inject.assistedinject.FactoryProvider2.initialize(FactoryProvider2.java:161)
at
org.elasticsearch.index.analysis.AnalysisModule.configure(AnalysisModule.java:299)
I suppose I could just wrap the analyzers myself to make them work, but
thought I'd see what your suggestion may be.
For custom analyzers, then you need to wrap it youself with an elasticsearch analyzer factory that creates them. But, those specific analyzers are already exposed in elasticsearch (the english on in 0.16.1, though its just a porter stemmer if memory serves).
On Saturday, May 7, 2011 at 4:37 AM, Paul Loy wrote:
Could not find a suitable constructor in org.apache.lucene.analysis.cjk.CJKAnalyzer. Classes must have either one (and only one) constructor annotated with @Inject or a zero-argument constructor that is not private.
at org.apache.lucene.analysis.cjk.CJKAnalyzer.class(CJKAnalyzer.java:46)
at org.elasticsearch.index.analysis.AnalyzerProviderFactory.create(AnalyzerProviderFactory.java:1)
at org.elasticsearch.common.inject.assistedinject.FactoryProvider2.initialize(FactoryProvider2.java:161)
at org.elasticsearch.index.analysis.AnalysisModule.configure(AnalysisModule.java:299)
Could not find a suitable constructor in org.apache.lucene.analysis.en.EnglishAnalyzer. Classes must have either one (and only one) constructor annotated with @Inject or a zero-argument constructor that is not private.
at org.apache.lucene.analysis.en.EnglishAnalyzer.class(EnglishAnalyzer.java:48)
at org.elasticsearch.index.analysis.AnalyzerProviderFactory.create(AnalyzerProviderFactory.java:1)
at org.elasticsearch.common.inject.assistedinject.FactoryProvider2.initialize(FactoryProvider2.java:161)
at org.elasticsearch.index.analysis.AnalysisModule.configure(AnalysisModule.java:299)
I suppose I could just wrap the analyzers myself to make them work, but thought I'd see what your suggestion may be.
For custom analyzers, then you need to wrap it youself with an
elasticsearch analyzer factory that creates them. But, those specific
analyzers are already exposed in elasticsearch (the english on in 0.16.1,
though its just a porter stemmer if memory serves).
On Saturday, May 7, 2011 at 4:37 AM, Paul Loy wrote:
Could not find a suitable constructor in
org.apache.lucene.analysis.cjk.CJKAnalyzer. Classes must have either one
(and only one) constructor annotated with @Inject or a zero-argument
constructor that is not private.
at org.apache.lucene.analysis.cjk.CJKAnalyzer.class(CJKAnalyzer.java:46)
at
org.elasticsearch.index.analysis.AnalyzerProviderFactory.create(AnalyzerProviderFactory.java:1)
at
org.elasticsearch.common.inject.assistedinject.FactoryProvider2.initialize(FactoryProvider2.java:161)
at
org.elasticsearch.index.analysis.AnalysisModule.configure(AnalysisModule.java:299)
Could not find a suitable constructor in
org.apache.lucene.analysis.en.EnglishAnalyzer. Classes must have either one
(and only one) constructor annotated with @Inject or a zero-argument
constructor that is not private.
at
org.apache.lucene.analysis.en.EnglishAnalyzer.class(EnglishAnalyzer.java:48)
at
org.elasticsearch.index.analysis.AnalyzerProviderFactory.create(AnalyzerProviderFactory.java:1)
at
org.elasticsearch.common.inject.assistedinject.FactoryProvider2.initialize(FactoryProvider2.java:161)
at
org.elasticsearch.index.analysis.AnalysisModule.configure(AnalysisModule.java:299)
I suppose I could just wrap the analyzers myself to make them work, but
thought I'd see what your suggestion may be.
Its deprecated for the specific language analysis analyzers. In 0.16, you have cjk (for the CJKAnalyzer), and in upcoming 0.16.1 you also have english for the EnglishAnalyzer. cjk and english are similar to standard, you can just start using them in your mappings.
On Sunday, May 8, 2011 at 1:40 AM, Paul Loy wrote:
I think you're correct about the PorterStemmer, however the SnowBallAnalyzer is deprecated so don't know what option I have.
For custom analyzers, then you need to wrap it youself with an elasticsearch analyzer factory that creates them. But, those specific analyzers are already exposed in elasticsearch (the english on in 0.16.1, though its just a porter stemmer if memory serves).
On Saturday, May 7, 2011 at 4:37 AM, Paul Loy wrote:
Could not find a suitable constructor in org.apache.lucene.analysis.cjk.CJKAnalyzer. Classes must have either one (and only one) constructor annotated with @Inject or a zero-argument constructor that is not private.
at org.apache.lucene.analysis.cjk.CJKAnalyzer.class(CJKAnalyzer.java:46)
at org.elasticsearch.index.analysis.AnalyzerProviderFactory.create(AnalyzerProviderFactory.java:1)
at org.elasticsearch.common.inject.assistedinject.FactoryProvider2.initialize(FactoryProvider2.java:161)
at org.elasticsearch.index.analysis.AnalysisModule.configure(AnalysisModule.java:299)
Could not find a suitable constructor in org.apache.lucene.analysis.en.EnglishAnalyzer. Classes must have either one (and only one) constructor annotated with @Inject or a zero-argument constructor that is not private.
at org.apache.lucene.analysis.en.EnglishAnalyzer.class(EnglishAnalyzer.java:48)
at org.elasticsearch.index.analysis.AnalyzerProviderFactory.create(AnalyzerProviderFactory.java:1)
at org.elasticsearch.common.inject.assistedinject.FactoryProvider2.initialize(FactoryProvider2.java:161)
at org.elasticsearch.index.analysis.AnalysisModule.configure(AnalysisModule.java:299)
I suppose I could just wrap the analyzers myself to make them work, but thought I'd see what your suggestion may be.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.