我正在運行Debian Wheezy,openjdk-7-jre,clojure 1.4.0和leiningen-1.7.1,它們都是從官方的repo安裝的。如何從項目的stax-utils依賴關係中排除tagsoup?
我有這樣的project.clj:
(defproject guess-film "1.0.0-SNAPSHOT"
:description "FIXME"
:dependencies [
[org.clojure/clojure "1.4.0"],
[clj-http "0.5.0"],
[clj-tagsoup "0.3.0" :exclusions [net.java.dev.stax-utils/stax-utils]]
]
:main guess-film.core
)
正如你可以在那個階段我排除STAX-utils的,其實這是CLJ-tagsoup Github的頁面上看到描述。
然後,我有這個SRC /推測膜/ core.clj:
ns guess-film.core
(:require
[clj-http.client :as client]
[pl.danieljanus.tagsoup :as parser :refer [parse parse-string]] :verbose
)
)
當我嘗試
lein repl
它崩潰,我相信是因爲不滿意STAX-utils軟件包:
...
(clojure.core/load "/pl/danieljanus/tagsoup")
(clojure.core/load "/clojure/zip")
(clojure.core/in-ns 'pl.danieljanus.tagsoup)
(clojure.core/alias 'zip 'clojure.zip)
(clojure.core/load "/clojure/xml")
(clojure.core/in-ns 'pl.danieljanus.tagsoup)
(clojure.core/alias 'xml 'clojure.xml)
(clojure.core/load "/clojure/data/xml")
(clojure.core/in-ns 'clojure.data.xml)
(clojure.core/alias 'str 'clojure.string)
(clojure.core/in-ns 'pl.danieljanus.tagsoup)
(clojure.core/alias 'lazy-xml 'clojure.data.xml)
ClassNotFoundException javanet.staxutils.ContentHandlerToXMLEventWriter java.net.URLClassLoader$1.run (URLClassLoader.java:366)
我試圖通過使用引用來避開lazy-xml的加載,但這並不工作,我猜想。我也嘗試過「:use ...:only [parse parse-string]」,但都沒有成功。
我只是不喜歡加載什麼,我不打算使用:)
難道它會嘗試反正加載懶XML CLJ-tagsoup失敗? 如果我無法擺脫這種依賴關係,它會不會是一次性能打擊?