0
우리는 몇 가지 Clojure 코드를 작성하려고합니다. 몇 분 전에 성공적으로 컴파일했지만 지금은이 예외가 발생합니다.java.lang.IllegalArgumentException : 해결할 수 없습니다 classname : FileReader
(ns myproject.core)
(defmacro safe ([bindings & code] form)
(if (list? bindings)
`(try
~bindings
(catch Throwable except# except#))
(if (= (count bindings) 0)
`(try ~code
(catch Throwable except# except#))
`(let ~(subvec bindings 0 2)
(try
(safe ~(subvec bindings 2) [email protected])
(catch Throwable except# except#)
(finally
(. ~(bindings 0) close))))))) ;;safe
(def div(safe (/ 12 2)))
(def v (safe [s (FileReader. (java.io.File. "M:/test.txt"))] (. s read)))
또는 java.io.File과 마찬가지로 가져 오기없이 정규화 된 이름을 사용할 수 있습니다. –