hibernate.search.lucene_version не был указан: используется LUCENE_CURRENT - PullRequest
0 голосов
/ 04 июля 2018

Я использую Hibernate Search с Spring Boot. У меня нет специальной конфигурации для Hibernate Search. Это просто показывает это предупреждение при запуске приложения. Как я могу указать hibernate.search.lucene_version?

Мой класс SearchService (используется только Hibernate Search):

@Service
public class SearchService {

    private FullTextEntityManager fullTextEntityManager;
    private QueryBuilder queryBuilder;

    @Autowired
    public SearchService(EntityManager entityManager) {
        entityManager = entityManager.getEntityManagerFactory().createEntityManager();
        fullTextEntityManager = Search.getFullTextEntityManager(entityManager);
    }

    @PostConstruct
    public void initialize() throws InterruptedException {
        fullTextEntityManager.createIndexer().startAndWait();
        queryBuilder = fullTextEntityManager.getSearchFactory()
                .buildQueryBuilder().forEntity(Post.class).get();
    }

    public List<Post> searchByQuery(String query) {
        org.apache.lucene.search.Query luceneQuery = queryBuilder.phrase()
                .withSlop(5)
                .onField("title")
                .sentence(query)
                .createQuery();
        Query jpaQuery = fullTextEntityManager.createFullTextQuery(luceneQuery, Post.class);
        return (List<Post>) jpaQuery.setMaxResults(20).getResultList();
    }
}

Ответы [ 2 ]

0 голосов
/ 04 июля 2018

Другим решением было бы создать файл hibernate.properties в classpath (я поместил его рядом с файлом application.properties) и вставить в него hibernate.search.lucene_version LATEST.

0 голосов
/ 04 июля 2018

В файле конфигурации Spring Boot добавьте к любому свойству Hibernate ORM / Hibernate Search префикс spring.jpa.properties..

Итак, в файле application.properties:

spring.jpa.properties.hibernate.search.lucene_version LATEST

В файле application.yaml:

spring.jpa.properties:
    hibernate.search:
        lucene_version: LATEST

Используйте любое значение, которое вы сочтете подходящим, вместо LATEST. Доступными значениями являются имена констант в org.apache.lucene.util.Version.

См. Также документацию по этой конкретной теме в Hibernate Search .

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