不知道是否有人能告訴我如何使用Apache Lucene的方法「的valueOf(字符串)」的版本?這是否用於返回應從枚舉中使用的當前版本?如何使用版本方法「的valueOf(字符串)」
例如,做:
Version.valueOf("StandardAnalyzer");
回報應與StandardAnalyzer使用的emum版本?
謝謝!
不知道是否有人能告訴我如何使用Apache Lucene的方法「的valueOf(字符串)」的版本?這是否用於返回應從枚舉中使用的當前版本?如何使用版本方法「的valueOf(字符串)」
例如,做:
Version.valueOf("StandardAnalyzer");
回報應與StandardAnalyzer使用的emum版本?
謝謝!
我認爲這種方式,你需要:探討它
for(Version v : Version.valueOf("StandardAnalyzer")) System.out.println(v);
這個valueOf
方法是爲每個方法定義的,並且簡單地將字符串"LUCENE_24"
轉換爲對應的枚舉常量LUCENE_24
。
我覺得枚舉有沒有讓你安全地選擇要使用的版本。我想如果你是從頭開始的話,你應該選擇最新的版本,否則你應該選擇從一個版本升級到另一個版本。 他們不推薦使用LUCENE_CURRENT常量,以便在選擇新版本庫時不會默默「更新」。
所以基本上我會通過Version.LUCENE_31作爲新項目的配置。枚舉也可以用來比較兩個版本與onOrAfter方法。
不過來回答你的問題,我認爲,(但現在還不能測試),如果由於某種原因,你要使用的valueOf方法你必須通過與版本名稱的字符串。例如Version.valueOf(「LUCENE_23」)。當然,如果你的版本名來自一個配置文件,這將是有用的。
希望能幫到
謝謝你的回答。我使用的版本3.1.0 Lucene的,我貼的原因是因爲每當我用Version.LUCENE_31爲StandardAnalyzer,我得到異常:org.springframework.web.util.NestedServletException:處理程序處理失敗;嵌套異常是java.lang.NoClassDefFoundError:org/apache/lucene/util/Version – MeanwhileInHell 2011-04-08 16:22:48
哦。這是另一個問題。它是唯一給你這個錯誤的lucene類嗎? – Jad 2011-04-08 16:33:52
這樣不會編譯,會不會? – 2011-04-08 16:14:16