импорт луценовых банок в clojure

1

Я пытаюсь импортировать два lein org.apache.lucene в проект lein и получить ClassNotFoundException.

Вот мой файл project.clj:

(defproject clj_processing_tweets "0.1.0-SNAPSHOT"
  :description "FIXME: write description"
  :url "http://example.com/FIXME"
  :license {:name "Eclipse Public License"
            :url "http://www.eclipse.org/legal/epl-v10.html"}
  :dependencies [[org.clojure/clojure "1.6.0"]
                 [org.apache.lucene/lucene-core "4.10.3"]
                 [org.apache.lucene/lucene-analyzers-common "4.10.3"]]
  :profiles {:dev {:dependencies [[speclj "3.1.0"]]}}
  :plugins [[speclj "3.1.0"]]
  :test-paths ["spec"])

После запуска lein deps я отправляю core.clj в реестр лейна, и я получил

CompilerException java.lang.ClassNotFoundException: org.apache.lucene.analysis.*, compiling:(clj_processing_tweets/core.
clj:1:36)

Вот мой файл core.clj:

(ns clj_processing_tweets.core
  (:import [org.apache.lucene.analysis *]))

Спасибо за помощь.

Теги:
lucene
clojure
leiningen

1 ответ

3
Лучший ответ

Вам нужно будет импортировать каждый класс, который вы хотите использовать отдельно, поскольку clojure не позволяет указать шаблон для импорта Java.

См. Этот ответ на более общий вопрос: qaru.site/questions/732276/...

Так, например:

(ns clj_processing_tweets.core
  (:import [org.apache.lucene.analysis Analyzer Tokenizer]))

Ещё вопросы

Сообщество Overcoder
Наверх
Меню