Интегрируйте Apache Mahout с ElasticSearch в Spring Boot - PullRequest
0 голосов
/ 07 сентября 2018

У меня есть приложение Spring Boot, интегрированное с ElasticSearch.Когда я пытаюсь добавить Apache Mahout в качестве зависимости maven, приложение больше не работает с этой ошибкой:

Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: org/apache/lucene/util/Accountable

Если я удаляю зависимость mahout, приложение работает.pom.xml:

    <dependencies>
        <dependency>
            <groupId>org.apache.mahout</groupId>
            <artifactId>mahout-core</artifactId>
            <version>0.9</version>
        </dependency>


        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>


    </dependencies>

Зависимость разрешена maven, проект компилируется без ошибок, но когда я его запускаю, сервер останавливается.Любая идея?Спасибо

1 Ответ

0 голосов
/ 07 сентября 2018

Чтобы использовать последние версии Elasticsearc v6.x и Spring-boot, вы должны сосредоточиться на матричных версиях. потому что, когда я пытался интегрировать Elasticsearch v6.2.2 в качестве зависимостей в мой spring-boot v1.5.X, я столкнулся с несколькими ошибками. Таким образом, Spring-Boot v2.x является совместимым с ES v6.x поэтому следующая ссылка поможет вам узнать матрицу между версиями вашего проекта: https://www.elastic.co/support/matrix#matrix_compatibility после этого используйте последнюю версию apache mahout.

...