无法从Clojure应用程序转换为最新的Clojure

oct*_*bus 2 clojure leiningen

我无法弄清楚为什么升级后出现以下编译错误:

Compiling addr-verify.core
Exception in thread "main" java.lang.NoClassDefFoundError: 
clojure/lang/ILookupHost, compiling:(core.clj:39:1)
at clojure.lang.Compiler$InvokeExpr.eval(Compiler.java:3463)
Run Code Online (Sandbox Code Playgroud)

我正在使用leiningen 2.3.4,并且我正在尝试升级应用程序以使用Clojure 1.5.1和一些依赖项.这与旧的project.clj编译好.但我想使用Clojure 1.5.1.我只是对造成这种情况的原因感到困惑.

这些是两个project.clj版本之间的差异.

< (defproject addr-verify "1.0.0-SNAPSHOT"

> (defproject addr-verify "1.0.1-SNAPSHOT"

<   :dependencies [[org.clojure/clojure "1.2.1"]
<                  [org.clojure/clojure-contrib "1.2.0"]
<                  [clojure-csv/clojure-csv "1.2.4"]
<                  [org.clojure/tools.cli "0.1.0"]
<                  [clj-http "0.1.3"]]
<    :main addr-verify.core)

>   :dependencies [[org.clojure/clojure "1.5.1"]
>                  [clojure-csv/clojure-csv "2.0.1"]
>                  [org.clojure/tools.cli "0.3.1"]
>                  [clj-http "0.9.1"]]
>    :omit-source true
>    :main addr-verify.core
>    :aot  [addr-verify.core])
Run Code Online (Sandbox Code Playgroud)

noi*_*ith 6

lein clean,如果你还没有.

有时会创建并重用已编译的工件,这会在您更改库版本时导致问题.lein clean清除那些文物.

  • 谢谢.这就是使stackoverflow成为宝贵资源的原因.只要有人不举手并展示一些工作,人们就愿意提供帮助. (2认同)