Clojure 我无法使用清晰度作为依赖性
我正在clojure启动一个玩具项目。我决定试一试。我安装了leiningen和clojure,我管理运行lein安装并通过emacs使用它。但是,我无法将清晰度作为我的项目的依赖项:Clojure 我无法使用清晰度作为依赖性,clojure,leiningen,Clojure,Leiningen,我正在clojure启动一个玩具项目。我决定试一试。我安装了leiningen和clojure,我管理运行lein安装并通过emacs使用它。但是,我无法将清晰度作为我的项目的依赖项: ;;;project.clj (defproject sms-client "1.0.0-SNAPSHOT" :description "This is meant to be an sms client" :dependencies [[org.clojure/clojure "1.2.1"]
;;;project.clj
(defproject sms-client "1.0.0-SNAPSHOT"
:description "This is meant to be an sms client"
:dependencies [[org.clojure/clojure "1.2.1"]
[clarity "0.5.5"]])
;;;src/sms_client/core.clj
(ns sms-client.core
(:require [clarity.form :as form]
[clarity.dev :as dev]))
(def the-form
(form/form
:login ""
:password ""))
(dev/show-comp the-form)
这是爆炸与:
clojure.lang.RT.keyword(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
[Thrown class java.lang.NoSuchMethodError]
Restarts:
0: [QUIT] Quit to the SLIME top level
Backtrace:
0: clarity.component__init.__init0(Unknown Source)
1: clarity.component__init.<clinit>(Unknown Source)
2: java.lang.Class.forName0(Native Method)
3: java.lang.Class.forName(Class.java:264)
4: clojure.lang.RT.loadClassForName(RT.java:1578)
5: clojure.lang.RT.load(RT.java:399)
6: clojure.lang.RT.load(RT.java:381)
7: clojure.core$load$fn__4519.invoke(core.clj:4915)
8: clojure.core$load.doInvoke(core.clj:4914)
9: clojure.lang.RestFn.invoke(RestFn.java:408)
10: clojure.core$load_one.invoke(core.clj:4729)
11: clojure.core$load_lib.doInvoke(core.clj:4766)
12: clojure.lang.RestFn.applyTo(RestFn.java:142)
13: clojure.core$apply.invoke(core.clj:542)
14: clojure.core$load_libs.doInvoke(core.clj:4800)
15: clojure.lang.RestFn.applyTo(RestFn.java:137)
16: clojure.core$apply.invoke(core.clj:542)
17: clojure.core$require.doInvoke(core.clj:4881)
18: clojure.lang.RestFn.invoke(RestFn.java:619)
19: clarity.form$eval1651$loading__4414__auto____1652.invoke(form.clj:1)
20: clarity.form$eval1651.invoke(form.clj:1)
21: clojure.lang.Compiler.eval(Compiler.java:5424)
22: clojure.lang.Compiler.eval(Compiler.java:5415)
23: clojure.lang.Compiler.load(Compiler.java:5857)
24: clojure.lang.RT.loadResourceScript(RT.java:340)
25: clojure.lang.RT.loadResourceScript(RT.java:331)
26: clojure.lang.RT.load(RT.java:409)
27: clojure.lang.RT.load(RT.java:381)
28: clojure.core$load$fn__4519.invoke(core.clj:4915)
29: clojure.core$load.doInvoke(core.clj:4914)
30: clojure.lang.RestFn.invoke(RestFn.java:408)
31: clojure.core$load_one.invoke(core.clj:4729)
32: clojure.core$load_lib.doInvoke(core.clj:4766)
33: clojure.lang.RestFn.applyTo(RestFn.java:142)
34: clojure.core$apply.invoke(core.clj:542)
35: clojure.core$load_libs.doInvoke(core.clj:4800)
36: clojure.lang.RestFn.applyTo(RestFn.java:137)
37: clojure.core$apply.invoke(core.clj:542)
38: clojure.core$require.doInvoke(core.clj:4881)
39: clojure.lang.RestFn.invoke(RestFn.java:421)
40: sms_client.core$eval1645$loading__4414__auto____1646.invoke(NO_SOURCE_FILE:1)
41: sms_client.core$eval1645.invoke(NO_SOURCE_FILE:1)
42: clojure.lang.Compiler.eval(Compiler.java:5424)
43: clojure.lang.Compiler.eval(Compiler.java:5415)
44: clojure.lang.Compiler.eval(Compiler.java:5391)
45: clojure.core$eval.invoke(core.clj:2382)
46: swank.commands.basic$eval_region.invoke(basic.clj:47)
47: swank.commands.basic$eval_region.invoke(basic.clj:37)
48: swank.commands.basic$eval849$listener_eval__850.invoke(basic.clj:71)
49: clojure.lang.Var.invoke(Var.java:365)
50: user$eval1641.invoke(NO_SOURCE_FILE)
51: clojure.lang.Compiler.eval(Compiler.java:5424)
52: clojure.lang.Compiler.eval(Compiler.java:5391)
53: clojure.core$eval.invoke(core.clj:2382)
54: swank.core$eval_in_emacs_package.invoke(core.clj:92)
55: swank.core$eval_for_emacs.invoke(core.clj:239)
56: clojure.lang.Var.invoke(Var.java:373)
57: clojure.lang.AFn.applyToHelper(AFn.java:167)
58: clojure.lang.Var.applyTo(Var.java:482)
59: clojure.core$apply.invoke(core.clj:540)
60: swank.core$eval_from_control.invoke(core.clj:99)
61: swank.core$eval_loop.invoke(core.clj:104)
62: swank.core$spawn_repl_thread$fn__617$fn__618.invoke(core.clj:309)
63: clojure.lang.AFn.applyToHelper(AFn.java:159)
64: clojure.lang.AFn.applyTo(AFn.java:151)
65: clojure.core$apply.invoke(core.clj:540)
66: swank.core$spawn_repl_thread$fn__617.doInvoke(core.clj:306)
67: clojure.lang.RestFn.invoke(RestFn.java:397)
68: clojure.lang.AFn.run(AFn.java:24)
69: java.lang.Thread.run(Thread.java:679)
clojure.lang.RT.keyword(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/keyword;
[抛出类java.lang.NoSuchMethodError]
重新启动:
0:[退出]退出到粘液顶层
回溯:
0:clarity.component__init._init0(未知源)
1:clarity.component_uuuinit(未知来源)
2:java.lang.Class.forName0(本机方法)
3:java.lang.Class.forName(Class.java:264)
4:clojure.lang.RT.loadClassForName(RT.java:1578)
5:clojure.lang.RT.load(RT.java:399)
6:clojure.lang.RT.load(RT.java:381)
7:clojure.core$load$fn__4519.invoke(core.clj:4915)
8:clojure.core$load.doInvoke(core.clj:4914)
9:clojure.lang.RestFn.invoke(RestFn.java:408)
10:clojure.core$load\u one.invoke(core.clj:4729)
11:clojure.core$load_lib.doInvoke(core.clj:4766)
12:clojure.lang.RestFn.applyTo(RestFn.java:142)
13:clojure.core$apply.invoke(core.clj:542)
14:clojure.core$load_libs.doInvoke(core.clj:4800)
15:clojure.lang.RestFn.applyTo(RestFn.java:137)
16:clojure.core$apply.invoke(core.clj:542)
17:clojure.core$require.doInvoke(core.clj:4881)
18:clojure.lang.RestFn.invoke(RestFn.java:619)
19:清晰性。表单$eval1651$loading_uu4414_uuauto_uu1652。调用(表单.clj:1)
20:clarity.form$eval1651.invoke(form.clj:1)
21:clojure.lang.Compiler.eval(Compiler.java:5424)
22:clojure.lang.Compiler.eval(Compiler.java:5415)
23:clojure.lang.Compiler.load(Compiler.java:5857)
24:clojure.lang.RT.loadResourceScript(RT.java:340)
25:clojure.lang.RT.loadResourceScript(RT.java:331)
26:clojure.lang.RT.load(RT.java:409)
27:clojure.lang.RT.load(RT.java:381)
28:clojure.core$load$fn__4519.invoke(core.clj:4915)
29:clojure.core$load.doInvoke(core.clj:4914)
30:clojure.lang.RestFn.invoke(RestFn.java:408)
31:clojure.core$load_one.invoke(core.clj:4729)
32:clojure.core$load_lib.doInvoke(core.clj:4766)
33:clojure.lang.RestFn.applyTo(RestFn.java:142)
34:clojure.core$apply.invoke(core.clj:542)
35:clojure.core$load_libs.doInvoke(core.clj:4800)
36:clojure.lang.RestFn.applyTo(RestFn.java:137)
37:clojure.core$apply.invoke(core.clj:542)
38:clojure.core$require.doInvoke(core.clj:4881)
39:clojure.lang.RestFn.invoke(RestFn.java:421)
40:sms_client.core$eval1645$load__4414__auto__1646.invoke(无源文件:1)
41:sms_client.core$eval1645.invoke(无源文件:1)
42:clojure.lang.Compiler.eval(Compiler.java:5424)
43:clojure.lang.Compiler.eval(Compiler.java:5415)
44:clojure.lang.Compiler.eval(Compiler.java:5391)
45:clojure.core$eval.invoke(core.clj:2382)
46:swank.commands.basic$eval_region.invoke(basic.clj:47)
47:swank.commands.basic$eval_region.invoke(basic.clj:37)
48:swank.commands.basic$eval849$listener_eval_u_850.invoke(basic.clj:71)
49:clojure.lang.Var.invoke(Var.java:365)
50:用户$eval1641.invoke(无源文件)
51:clojure.lang.Compiler.eval(Compiler.java:5424)
52:clojure.lang.Compiler.eval(Compiler.java:5391)
53:clojure.core$eval.invoke(core.clj:2382)
54:swank.core$eval\u在\u emacs\u包中调用(core.clj:92)
55:swank.core$eval_for_emacs.invoke(core.clj:239)
56:clojure.lang.Var.invoke(Var.java:373)
57:clojure.lang.AFn.applyToHelper(AFn.java:167)
58:clojure.lang.Var.applyTo(Var.java:482)
59:clojure.core$apply.invoke(core.clj:540)
60:swank.core$eval_from_control.invoke(core.clj:99)
61:swank.core$eval_loop.invoke(core.clj:104)
62:swank.core$spawn\u repl\u线程$fn\u 617$fn\u 618.invoke(core.clj:309)
63:clojure.lang.AFn.applyToHelper(AFn.java:159)
64:clojure.lang.AFn.applyTo(AFn.java:151)
65:clojure.core$apply.invoke(core.clj:540)
66:swank.core$spawn\u repl\u线程$fn\u 617.doInvoke(core.clj:306)
67:clojure.lang.RestFn.invoke(RestFn.java:397)
68:clojure.lang.AFn.run(AFn.java:24)
69:java.lang.Thread.run(Thread.java:679)
我做错了什么?清楚地说,“0.5.5”是所要求的爆炸:
user=> (require 'clarity.form)
java.lang.NoSuchMethodError: clojure.lang.RT.keyword(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword; (form.clj:1)
清晰度“0.5.5”似乎不适用于clojure 1.2.1,但适用于clojure 1.3.0
你可以
使用clarity“0.5.3”并坚持使用clojure 1.2.1或保持clarity 0.5.5并切换到clojure 1.3.0
就我个人而言,我建议使用两者的最新版本 这是AOT编译,使库jar与Clojure 1.2不兼容。我不是有意放弃对1.2的支持,所以我已经修复了这个问题,并刚刚发布了Clarity 0.5.6。谢谢你的反馈