Как использовать метод Version 'valueOf (String)' - PullRequest
1 голос
/ 08 апреля 2011

Хотите знать, кто-нибудь может сказать мне, как использовать метод Apache Lucene 'valueOf (String)' для версии?Используется ли это для возврата текущей версии, которая должна использоваться из перечисления?

http://lucene.apache.org/java/3_1_0/api/core/org/apache/lucene/util/Version.html#valueOf(java.lang.String)

Например:

Version.valueOf("StandardAnalyzer");

возвращает версию emum, котораяследует использовать с StandardAnalyzer?

Спасибо!

Ответы [ 3 ]

0 голосов
/ 08 апреля 2011

Я думаю, что так вам нужно: исследуйте это

for(Version v : Version.valueOf("StandardAnalyzer")) System.out.println(v);
0 голосов
/ 08 апреля 2011

Я думаю, что enum существует, чтобы вы могли безопасно выбрать версию, которую хотите использовать. Я предполагаю, что вы должны использовать последнюю версию, если вы начинаете с нуля, но в противном случае вы должны сделать добровольный выбор для перехода с одной версии на другую. Они осудили константу LUCENE_CURRENT, чтобы вы не «молча» обновлялись при выборе новой версии библиотеки.

Так что в основном я бы передал Version.LUCENE_31 в качестве конфигурации для нового проекта. Перечисление также можно использовать для сравнения двух версий с методом onOrAfter.

Тем не менее, чтобы ответить на ваш вопрос, я думаю (но не могу проверить прямо сейчас), что если по какой-то причине вы хотите использовать метод valueOf, вам придется передать строку с именем версии. Например Version.valueOf ("LUCENE_23"). Конечно, это будет полезно, если имя вашей версии происходит из файла конфигурации.

Надеюсь, что поможет

0 голосов
/ 08 апреля 2011

Этот valueOf метод определен для каждого метода и просто преобразует строку типа "LUCENE_24" в соответствующую константу перечисления LUCENE_24.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...