Lein Clojure 1.3 与 Clojure 1.2.1

Posted

技术标签:

【中文标题】Lein Clojure 1.3 与 Clojure 1.2.1【英文标题】:Lein Clojure 1.3 vs Clojure 1.2.1 【发布时间】:2012-04-25 11:59:12 【问题描述】:

我承认这个问题的措辞有点糟糕。请让我知道我应该运行哪些命令来提供更多信息,我会提供。

上下文:我已经使用 Clojure 大约 1 年了。主要只是通过clojure repl。现在,我开始使用 Lein。

但是,它 leon 不喜欢我的一些代码。这是我掌握的信息:

$ lein version
Leiningen 1.7.1 on Java 1.6.0_29 Java HotSpot(TM) 64-Bit Server VM

当我手动运行 clojure 时,我得到:

Clojure 1.3.0
user=> (clojure-version)
"1.3.0"

当我跑步时

$ lein repl
REPL started; server listening on localhost port 12572
user=> (clojure-version)
"1.2.1"

现在——我该如何解决这个问题?我希望 leon 使用 1.3.0,而不是 1.2.1

谢谢!

【问题讨论】:

【参考方案1】:

project.clj 文件列出了 lein 项目的依赖项,包括 clojure 的版本。所以只需将[org.clojure/clojure "1.3.0"] 放在依赖向量中,而不是[org.clojure/clojure "1.2.1"]。这是一个准系统示例:

(defproject myproject "0.5.0-SNAPSHOT"
  :description "A project for doing things."
  :url "http://github.com/technomancy/myproject"
  :dependencies [[org.clojure/clojure "1.3.0"]])

他们是 Leiningen 的 github 上的一个更详细和带注释的示例

【讨论】:

非常好。谢谢!我愚蠢地没有意识到我需要 1.3.0 依赖项,因为它已经安装了。

以上是关于Lein Clojure 1.3 与 Clojure 1.2.1的主要内容,如果未能解决你的问题,请参考以下文章

无法在ClojureScript 1.8 Lein项目中使用NodeJS Twitter库

Clojure 合并函数

是否可以从命令提示符设置lein:main值而不是编辑文件?

clojure配置

安装 Leiningen 以与 Clojure 一起使用

使用 ProGuard 混淆 clojure uberjars