14
My deklaracji przestrzeni nazw wygląda następująco:Pierwsze IllegalStateException podczas przeładunku nazw w REPL
(ns test.foo
(:use
[clj-http.client :only (get) :as client]
[net.cgrand.enlive-html :only (select) :as html]))
To działa dobrze w REPL, po raz pierwszy go używać. Potem, kiedy zmodyfikować kod i spróbuj wykonać następujące czynności w REPL:
(use :reload 'test.foo)
uzyskać:
java.lang.IllegalStateException: get already refers to: #'clj-http.client/get in namespace: test.foo (foo.clj:1)
jestem na oknach z zegara i również próbował z Leiningen (Lein repl).
Dziękuję bardzo Christophe. Sądzę, że nie mogłem oczekiwać czegoś lepszego niż mistrz Clojure odpowiadający na moje pytanie; o) – Damien
Podczas gdy ta odpowiedź jest nadal całkowicie słuszna, zdałem sobie sprawę, że użycie: require zamiast: use również rozwiązuje mój problem, o ile zawsze używam prefiksu określona w: as wywoływanie funkcji z innych przestrzeni nazw. Osobiście wolę tę alternatywę. – Damien