2013-07-08 2 views
10

Я новичок Lucene, и я пытаюсь открыть индекс Lucene 4.3 (который я создаю с моей простой Lucene 4.3.1 приложения) с помощью Люка, но он продолжает давать мне:Как открыть индекс Lucene 4.3?

Invalid directory at the location, check console for more information. Last exception: java.lang.IllegalArgumentException: A SPI class of type org.apache.lucene.codecs.Codec with name 'Lucene42' does not exist. You need to add the corresponding JAR file supporting this SPI to your classpath.The current classpath supports the following names: [Lucene40, Lucene3x, SimpleText, Appending]

Fine. Поэтому я установил версию Lucene, используемую в коде, в Version.LUCENE_43. Я также попробовал ранее версии 3.x. Что я здесь делаю неправильно? Можно ли использовать другой браузер Lucene?

Я бегу Люк, используя java -jar lukeall-4.0.0-ALPHA.jar, и я говорю ему, чтобы открыть индекс, который производит мое приложение.

UPDATE:

  • Я попытался установить мой CLASSPATH включить Lucene-ядро: 4.3.1: баночку. Это не помогло.

  • Люк бросает эту ошибку:

    java.lang.IllegalArgumentException: Класс SPI типа org.apache.lucene.codecs.Codec с именем 'Lucene42' не существует. Вам нужно добавить соответствующий JAR-файл, поддерживающий этот SPI, в ваш путь к классам. Текущий путь к классам поддерживает следующие имена: [Lucene40, Lucene3x, SimpleText, Appending] java.lang.IllegalArgumentException: класс SPI типа org.apache.lucene. codecs.Codec с именем «Lucene42» не существует. Вам нужно добавить соответствующий файл JAR, поддерживающий этот SPI для вашего classpath.The тока поддерживает путь к классам следующие имена: [Lucene40, Lucene3x, SIMPLETEXT, добавляющим]

Большое спасибо!

+0

Проверка версии баночки, если совместимы. –

+0

Вы используете последнюю версию Люка? Вы пытались добавить jar с помощью ['Lucene42Codec'] (https://lucene.apache.org/core/4_2_0/core/org/apache/lucene/codecs/lucene42/Lucene42Codec.html) в classpath? Похоже, ваша версия Luke просто не знает о более новом формате, который вы использовали для индекса. – ffriend

+0

Пожалуйста, проверьте мои комментарии для обновления. – carlspring

ответ

8

Есть человек, который не спешил исправить люк для lucene-4.3.1.

https://github.com/tarzanek/luke

+0

Отлично! Я попытался сделать это сам, но я не знаю, что много Lucene еще, поэтому я прибегал к откату от более ранней версии Lucene, которая была поддержана Люком. – carlspring

+6

и поскольку lucene 4.4 отсутствует: https://github.com/betepahos/lukegit – teodimoff

+2

Просто git клонирует его, а затем запускает файл jar lukeall в каталоге dist – TheSteve0

11

После долгого времени поиска я получил указание искать последний Лука выпускает здесь: Opengrok, где вы можете найти версии Луки мимо 4.0.0-альфа, доступные на сайте. Luke 4.4 должен иметь возможность читать текущий формат индекса с некоторыми оговорками.

Смежные вопросы