使用 lein 将依赖项添加到 clojure 项目
Adding dependencies to clojure projects using lein
尽管将 desired dependency 添加到我的 project.clj 文件中,
(defproject word-tree "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.10.1"]
[org.clojure/clojurescript "1.10.520"]
[clojure-opennlp "0.5.0"] ; <----------------------here
[reagent "0.8.1"]]
...
我无法访问依赖项提供的功能。
在我的一个文件中引用命名空间后,
(ns word-tree.suffix-tree
(:require [clojure.string :as str]
[opennlp.nlp :as nlp])) ; <-----this is the namespace of the dependency
我收到这个错误:
No such namespace: opennlp.nlp, could not locate opennlp/nlp.cljs, opennlp/nlp.cljc, or JavaScript source providing "opennlp.nlp"
最奇怪的是,当我 运行 lein deps :tree
依赖出现时!
$ lein deps :tree
...
[cider/piggieback "0.4.1" :scope "test"]
[cljfmt "0.5.7"]
[rewrite-clj "0.5.2"]
[rewrite-cljs "0.4.3"]
[clojure-complete "0.2.5" :exclusions [[org.clojure/clojure]]]
[clojure-opennlp "0.5.0"] <------------------------------------------------here!!!
[instaparse "1.4.9"]
[org.apache.opennlp/opennlp-tools "1.9.0"]
[figwheel-sidecar "0.5.19" :scope "test"]
...
对于我的项目,我真的很想使用这个依赖项,但它不起作用。任何建议将是最受欢迎的。谢谢。
在我看来,问题在于该库仅适用于 JVM 上的 Clojure,而您正试图在 ClojureScript 项目中使用它。
No such namespace: opennlp.nlp, could not locate opennlp/nlp.cljs, opennlp/nlp.cljc, or JavaScript source providing "opennlp.nlp"
编译器尝试查找 ClojureScript 代码(扩展名 .cljs
)或与 Clojure 和 ClojureScript 兼容(扩展名 .cljc
)或普通 JavaScript,但找到 none.
尽管将 desired dependency 添加到我的 project.clj 文件中,
(defproject word-tree "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.10.1"]
[org.clojure/clojurescript "1.10.520"]
[clojure-opennlp "0.5.0"] ; <----------------------here
[reagent "0.8.1"]]
...
我无法访问依赖项提供的功能。
在我的一个文件中引用命名空间后,
(ns word-tree.suffix-tree
(:require [clojure.string :as str]
[opennlp.nlp :as nlp])) ; <-----this is the namespace of the dependency
我收到这个错误:
No such namespace: opennlp.nlp, could not locate opennlp/nlp.cljs, opennlp/nlp.cljc, or JavaScript source providing "opennlp.nlp"
最奇怪的是,当我 运行 lein deps :tree
依赖出现时!
$ lein deps :tree
...
[cider/piggieback "0.4.1" :scope "test"]
[cljfmt "0.5.7"]
[rewrite-clj "0.5.2"]
[rewrite-cljs "0.4.3"]
[clojure-complete "0.2.5" :exclusions [[org.clojure/clojure]]]
[clojure-opennlp "0.5.0"] <------------------------------------------------here!!!
[instaparse "1.4.9"]
[org.apache.opennlp/opennlp-tools "1.9.0"]
[figwheel-sidecar "0.5.19" :scope "test"]
...
对于我的项目,我真的很想使用这个依赖项,但它不起作用。任何建议将是最受欢迎的。谢谢。
在我看来,问题在于该库仅适用于 JVM 上的 Clojure,而您正试图在 ClojureScript 项目中使用它。
No such namespace: opennlp.nlp, could not locate opennlp/nlp.cljs, opennlp/nlp.cljc, or JavaScript source providing "opennlp.nlp"
编译器尝试查找 ClojureScript 代码(扩展名 .cljs
)或与 Clojure 和 ClojureScript 兼容(扩展名 .cljc
)或普通 JavaScript,但找到 none.