2010-04-05 97 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

相關問題