2010-04-05 101 views
3

我们遇到了一个严重的Lucene.NET 2.3代码库错误。我们正在升级到Lucene 2.9,希望bug能够修复。Lucene.NET - MultiFieldQueryParser构造函数中的Version参数是什么?

升级到最新版本,我们看到MultiFieldQueryParser构造器是[作废]:

[Obsolete("Use the ctor with Version param instead.")] 
public MultiFieldQueryParser(string[] fields, Analyzer analyzer) 

相反,我们使用,需要一个版本参数构造函数:

public MultiFieldQueryParser(Version version, string[] fields, Analyzer analyzer) 

问题是,我找不到有关版本参数是什么的文档,它应该是什么,我应该在这里传递什么。

任何人都可以对此有所了解吗?

回答

6

版本参数被添加来提供向后兼容性,可以扩展以适应未来的变化。

如果您不关心向后兼容性,只需使用Version.LUCENE_CURRENT即可。如果你确实需要确切地知道发生了什么变化,你通常必须深入研究源代码。

Lucene提示:你通常会看到更好的文档,看看java version

+2

在3.0.1中,不推荐使用Version.LUCENE_CURRENT http://lucene.apache.org/java/3_0_1/changes/Changes.html#3.0.1.api_changes 因此,请使用实际的版本号。 – 2010-04-06 11:55:16

+1

你在开玩笑吗?天啊。实际版本号...好的...版本需要2个参数。一个字符串和一个int。这是什么文件? – 2010-04-06 17:51:06

+2

啊,那里是:Lucene.Net.Util.Version.LUCENE_29在这里记录:http://lucene.apache.org/java/2_9_1/api/all/org/apache/lucene/util/Version.html – 2010-04-06 17:52:27

相关问题