假设您正在使用leiningen并且想要为project.clj文件添加依赖项。
不是打开你的编辑器并手动添加它,而是必须可以通过clojure语言以编程方式执行此操作。像这样:
(update-in :dependencies conj ["enlive" "1.1.3"])
莱因的更新并没有帮助,因为它没有做出改变。
你们会怎么做?
答案 0 :(得分:1)
由于project.clj
是Clojure文件,您可以将其放在project.clj
文件的顶部:
(def my-deps [["enlive" "1.1.3"]])
..以及后来:
:dependencies my-deps
这意味着你甚至可以slurp
.edn
一个你可以编辑的build.boot
文件。实际上,我在project.clj
(相当于boot
但是(defn slurp-deps []
(read-string (slurp "resources/deps.edn")))
)的顶部有这个:
:dependencies (slurp-deps)
我这样使用它:
.edn
其余的只是更新您的地图,并writing将其更新回相同的boot.user=> (set-env!
#_=> :resource-paths #{"src"}
#_=> :dependencies '[["enlive" "1.1.3"]])
文件。
如果您想在之后重新加载依赖项,请查看此SO question。
注意:作为替代方案,我知道这是使用boot
在REPL中执行操作的方法,并且它将获取/加载依赖项:
{{1}}