Leiningen:如何在project.clj中定义常量?

时间:2015-06-29 11:43:06

标签: clojure leiningen

我在project.clj中重复了一些值,如下所示:

(defproject foo "0.1.0-SNAPSHOT"
  ...

  :dependencies [[bar "3.4.5"]
                 [baz "3.4.5"]
                 [bat "3.4.5"]]

  ...)

我想在这里使用某种常量,所以当这些库更新为3.5.0时,我只需更改一个位置。

这里的最佳做法是什么?我能想出的最好的是:

(def deps-version "3.4.5")

(defproject foo "0.1.0-SNAPSHOT"
  ...

  :dependencies [[bar ~deps-version]
                 [baz ~deps-version]
                 [bat ~deps-version]]

  ...)

1 个答案:

答案 0 :(得分:1)

defproject之前使用定义是完全正常的常规做法。

你也可以使用更高级的东西,比如取决于构建环境(我也会标记有效的项目版本)。在这个问题“Leiningen: How to define constants in project.clj?

的答案中找到了一个很好的例子