如何在Clojure中要求依赖?

时间:2015-06-05 21:31:31

标签: clojure clojure-testing

我对Clojure项目中的依赖关系有两个问题。

  1. 是否有类似:dev-dependencies:test-dependencies的内容,以便我无需在lein run下载所有内容?因此,在我运行测试之前,我不需要拥有这些额外的库。

  2. 我可以在一个文件中加载依赖项,并在另一个文件中需要这个文件吗?我想要有类似的东西:

    ; dependencies.clj
    ; ...
    
    (:require [clj-http.client :as client]
      [clj-http.fake   :refer :all]
      [clojure.test   :refer :all]))
    
    
    ; some-file.clj
    ; ...
    
    (:require [dependencies :refer :all[)
    

2 个答案:

答案 0 :(得分:2)

1)是的,Leiningen只为profiles

提供了purposes

2)不,来自一个名称空间的引用不是名称空间之间的“继承”。您无法表达“我想引用此命名空间中的所有内容,其他一些命名空间引用”

答案 1 :(得分:2)

关于第2点,Potemkin可以帮助您完成此操作。如果您有多个名称空间实现库的功能,但是希望向库的用户提供单个名称空间,Potemkin特别有用。