繁体   English   中英

Clojure:Timbre和clojure.test命名空间

[英]Clojure: Timbre and clojure.test namespaces

试图让Timbreclojure.test一起加载到我的测试项目中。 我的第一次尝试是

(ns foo.core-test
  (:require [clojure.test :refer :all]
            [taoensso.timbre :as timbre]
            [foo.core :refer :all]))

编译直到我按照Timbre文档中的下一步进行操作,然后添加

(timbre/refer-timbre) ; Provides useful Timbre aliases in this ns

我现在得到以下编译错误

IllegalStateException report already refers to #'clojure.test/report in namespace foo.core-test
clojure.lang.Namespace.warnOrFailOnReplace (Namespace.java:88)

好吧,时髦,我会尝试

(ns foo.core-test ; ------vvvvvvvvvvvvvvvv-----
  (:require [clojure.test :exclude [report]]
            [taoensso.timbre :as timbre]
            [foo.core :refer :all]))

嗯,不 我注意到clojure也有report 怎么样

(ns foo.core-test
  (:refer-clojure :exclude [report])
  (:require [clojure.test :refer :all]
            [taoensso.timbre :as timbre]
            [foo.core :refer :all]))

嗯,不

我四处乱逛,直到厌倦了组合式试验和错误。 我还没有找到一种使它们共存的方法。 有任何线索吗,谢谢?

clojure.core没有report 在第二个ns形式中,您似乎不见了:refer :allclojure.test 请尝试以下形式:

(ns foo.core-test
  (:require [clojure.test :refer :all :exclude [report]]
            [taoensso.timbre :as timbre]
            [foo.core :refer :all]))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM