2012-07-29 2 views
1

나는 공식 repo에서 설치 한 데비안 Wheezy, openjdk-7-jre, clojure 1.4.0 및 leiningen-1.7.1을 사용하고 있습니다.tagsoup에 대한 프로젝트 stax-utils 종속성을 어떻게 제외할까요?

나는 이런 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-유틸의 추정 :

... 
(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) 

참조를 사용하여 지연 XML의로드를 피하려고했지만 참조가 작동하지 않습니다. 또한 나는 ": 사용 : ... [parse parse-string] 만"시도했지만 성공하지 못했습니다.

난 그냥 내가 사용하는 :)

가 어쨌든 게으른-XML을로드하려고 CLJ-tagsoup 실패는하지 않을거야 무엇을로드하고 싶지 않아요

? 내가 그 의존성에서 탈출 할 수 없다면, 그것은 성과가 될 것인가?

답변

1

javanet.staxutils.Content ... 클래스를 가져 오는 것은 clj-tagsoup입니다. 따라서 여러분이 할 수있는 일은별로 없다고 생각합니다.

성능에 영향을주지 않으며, 다른 클래스를로드해도 차이가 거의 없으며 많은 메모리를 사용하지 않습니다.

관련 문제