BirdsHover

——路漫漫其修远兮,吾将上下而爬楼梯!

  BlogJava :: 首页 ::  :: 联系 :: 聚合  :: 管理 ::
  21 随笔 :: 8 文章 :: 34 评论 :: 0 Trackbacks
Lucene 2.4  10月8号就出来了,到现在才注意到。主要变化:

一、改变了向后兼容性(1)
LUCENE-1340: Lucene的向后兼容性有一个细小的变化,因为内部原因,现在允许接口“Fieldable”发生改变(注:编程中成熟的产品一般不改变接口),假如一个程序实现了自己的Fieldable,那么就要注意这点,否则没必要担心。这个改变将在2.4版开始后延续到以后所有的2.x版本中。另外,Fieldable 有很大肯能性在 3.0中被更改。

二、运行时行为变化(4)
1、 LUCENE-1151:修正了StandardAnalyzer 分词器不识别主机名(域名,如eg lucene.apache.org)和缩写。要使用以前的StandardAnalyzer ,可以调用StandardAnalyzer.setDefaultReplaceInvalidAcronym(false) (静态方法),或者设置系统属性,在JVM启动的时候,设置org.apache.lucene.analysis.standard.StandardAnalyzer.replaceInvalidAcronym为false.那么StandardAnalyzer 实例将像2.4版以前一样工作。另外,可以调用setReplaceInvalidAcronym(false)方法改变StandardAnalyzer的行为。这个向后兼容将在3.0版被删除(硬编码值为true)。

2、LUCENE-1044: IndexWriter 以前的autoCommit=true 现在要编码调用。以前,一个flush方法调用也伴随一次commit操作。现在可以调用IndexWriter.commit方法来实现commit操作。此外,到3.0版,autoCommit将被硬编码为false(IndexWriter 带autoCommit参数已经过时了)。

3、LUCENE-1335: IndexWriter.addIndexes(Directory[])和addIndexesNoOptimize 方法不再允许在同一个Directory 使用一次以上。内部,IndexWriter使用Directory 和segment 名称去识别唯一的segments,所以增加同一个目录多次会引发问题。

4、LUCENE-1396: 引入了PhraseQuery.toString() ,在各个位置上的分隔符,用a ?和复杂terms,在相同的地方,将引入a |.
 
另外API有26处发生了变化,修复了16个bug,加入了20个新功能,6个优化,修改了3个文件。

API和新功能以及优化可能会带来开发上的一些变化。

变化描述源地址:http://lucene.apache.org/java/2_4_0/changes/Changes.html#2.4.0.optimizations

另外下载的时候居然是校内网,看来校内去推广去了,呵呵。
posted on 2008-10-21 11:11 Birdshover 阅读(985) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: