4

我正在使用 clojure 1.3.0 和 clojure.xml,但是,尝试解析 XML 会产生:

IllegalArgumentException 未找到匹配方法:解析类 com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl clojure.lang.Reflector.invokeMatchingMethod (Reflector.java:79)

(这是 java 1.6) - sax 解析器和 clojure 1.3 之间的版本不匹配?

编辑:我也试过 Clojure 1.4,同样的问题。一定是JDK问题?

4

1 回答 1

4

这是我对 clojure.xml 的误解——当你向它传递一个字符串时,它正在寻找加载 XML 内容的 URI。如果您已经将 XML 作为字符串,请将其转换为流并将其传递给 clojure.xml,例如:

(let [stream (java.io.ByteArrayInputStream. (.getBytes (.trim xml)))]
于 2012-07-02T12:01:41.730 回答