I wonder if this should be in the FAQ entry "How do i get code written for
Lucene 1.4.x to work with Lucene 2.x", Or perhaps just adding there a link
to your post here -
http://www.nabble.com/Lucene-in-Action-examples-complie-problem-tf2418478.html#a6743189

Erik Hatcher <[EMAIL PROTECTED]> wrote on 10/10/2006 12:05:41:

> I have long been meaning to publish an updated codebase for Lucene in
> Action compatible with Lucene 2.0.  I adjusted the code a while ago,
> but I haven't published it yet (and I think the plan is to wait until
> LIA2 is finished to do so).  I did make notes when I made these
> changes, and I'm pasting them below for all to benefit from.
>
>
> Replace all BooleanQuery.add's, e.g.:
>
>     -      subjectQuery.add(tq, false, false);
>     +      subjectQuery.add(tq, BooleanClause.Occur.SHOULD);
>
> Substitute RangeFilter for DateFilter usage, e.g.:
>
>     -    DateFilter filter = new DateFilter("modified", jan1, dec31);
>     +    RangeFilter filter = new RangeFilter("modified", jan1,
> dec31, true, true);
>
>     NOTE: The dates are now String's generated by
> DateUtils.dateToString() and incompatible with DateField
>
> Replace all Field.Keyword/UnStored/Text/UnIndexed with the enumerated
> types, e.g.:
>
>     -      doc.add(Field.Keyword("animal", animal));
>     +      doc.add(new Field("animal", animal, Field.Store.YES,
> Field.Index.UN_TOKENIZED));
>
>
> Rename PhrasePrefixQuery -> MultiPhraseQuery
>
> Use instance of QueryParser instead of static parse method, e.g.:
>
>     -        Query query = QueryParser.parse(expression, "contents",
> analyzer);
>     +        Query query = new QueryParser("contents", analyzer).parse
> (expression)
>
>
> QueryParser subclasses adjusted for overridden getXXXQuery method
> signatures.
>
> IndexReader.delete() updated to be
> IndexReader.deleteDocument/.deleteDocuments()
>
> IndexWriter internal configuration values now accessed through
> getters/setters rather than the fields directly, with minMergeDocs
> renamed as setMaxBufferedDocs().
>
> QueryParser.setLowercaseWildcardTerms() replaced
> with .setLowercaseExpandedTerms()
>
> QueryParser.getRangeQuery() still uses DateField when constructing a
> RangeQuery.
>    If your index is built using DateTools, you will need to subclass
> and override, as shown in QueryParserTest.testRangeQuery().
>
>
>
>
> On Oct 10, 2006, at 2:13 PM, Serhiy Polyakov wrote:
>
> > Hi,
> >
> > I started to study Lucene following the book Lucene in Action.
> >
> > I am trying to compile book examples downloaded from the book site:
> > http://www.manning.com/hatcher2/
> >
> > When I am trying to compile first example (Indexer.java) it gives me
> > the following error:
> >
> > LuceneInAction\src\lia\meetlucene\Indexer.java:80: cannot find symbol
> > symbol  : method Text(java.lang.String,java.io.FileReader)
> > location: class org.apache.lucene.document.Field
> >    doc.add(Field.Text("contents", new FileReader(f)));
> >
> > I know that file lucene-core-2.0.0.jar is in CLASSPATH and other
> > classes like
> > org.apache.lucene.index.IndexWriter are working OK. The only class I
> > am having problem with is org.apache.lucene.document.Field;
> >
> > Can you suggest something?
> >
> > Thanks,
> > Serhiy
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to