Примеры использования последней версии Lucene - PullRequest
0 голосов
/ 28 мая 2020

Я новичок в Lucene и хочу вызвать его прямо из моего Java кода в среде Maven. Некоторое время я пытался найти рабочие примеры, которые я мог бы скачать и запустить. Последний учебник на официальном сайте - 2013 - Lucene 3. * https://cwiki.apache.org/confluence/display/lucene/LuceneFAQ#LuceneFAQ -HowdoIstartusingLucene ?. Текущая последняя версия в Maven - 8.5.1. Большинство неофициальных руководств в Интернете не содержат номеров версий или полных имен. Lucene, кажется, часто меняет свой API, синтаксис и имена, так что возникают ошибки компиляции, ClassNotFound и удаленные методы. Я хотел бы знать:

  • текущая стабильная версия
  • задействованные пакеты Lucene (требуется ли lucene-query пакет?)
  • указатели на код, который работает в 2020 году с этими версиями

1 Ответ

1 голос
/ 28 мая 2020

Домашняя страница последней версии документации: , здесь . Сюда входят ссылки на все разделы javado c (разные разделы для разных библиотек).

Он также включает ссылки на некоторые текущие примеры рабочего кода (да, есть критические изменения с pre-8 на 8+). Как вы видели, вики может быть ненадежной в этом отношении.

Основная демонстрация , вероятно, лучшее место для начала просмотра примеров рабочего кода.

В частности, см. как индексировать и как искать примеров.

Какие пакеты вам нужны, полностью зависит от того, что вы пытаетесь сделать. Маловероятно, что вам понадобится пакет пространственного анализа, например, если вы не знаете, что он вам нужен .

Мой POM обычно включает в себя:

<properties>
    <lucene.version>8.5.0</lucene.version>
</properties>

<dependencies>
    <dependency>        
        <groupId>org.apache.lucene</groupId>          
        <artifactId>lucene-core</artifactId>
        <version>${lucene.version}</version>
    </dependency>
    <dependency>
        <groupId>org.apache.lucene</groupId>
        <artifactId>lucene-queryparser</artifactId>
        <version>${lucene.version}</version>
    </dependency>
    <dependency>
        <groupId>org.apache.lucene</groupId>
        <artifactId>lucene-analyzers-common</artifactId>
        <version>${lucene.version}</version>
    </dependency>
    <dependency>
        <groupId>org.apache.lucene</groupId>
        <artifactId>lucene-analyzers-icu</artifactId>
        <version>${lucene.version}</version>
    </dependency>
</dependencies>

Иногда я также используйте эти:

<dependency>
    <groupId>org.apache.lucene</groupId>
    <artifactId>lucene-suggest</artifactId>
    <version>${lucene.version}</version>
</dependency>
<dependency>
    <groupId>org.apache.lucene</groupId>
    <artifactId>lucene-highlighter</artifactId>
    <version>${lucene.version}</version>
</dependency>

Надеюсь, что это поможет или, по крайней мере, укажет вам правильное направление.

...