首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法让generative.test与pedestal.io一起工作

无法让generative.test与pedestal.io一起工作
EN

Stack Overflow用户
提问于 2013-08-15 23:46:59
回答 1查看 236关注 0票数 1

这是我失败的秘诀:

lein新基座-app生成-app

然后,我修改project.clj如下:

代码语言:javascript
复制
(defproject generative-app "0.0.1-SNAPSHOT"
  :description "FIXME: write description"
  :repl-options {:init (use 'dev)}
  :dependencies [[org.clojure/test.generative "0.4.0"]
                 [org.clojure/clojure "1.5.1"]
                 [org.clojure/clojurescript "0.0-1586"]
                 [domina "1.0.1"]
                 [ch.qos.logback/logback-classic "1.0.7" :exclusions [org.slf4j/slf4j-api]]
                 [io.pedestal/pedestal.app "0.1.10"]
                 [io.pedestal/pedestal.app-tools "0.1.10"]]
  :profiles {:dev {:source-paths ["dev"]}}
  :min-lein-version "2.0.0"
  :source-paths ["app/src" "app/templates"]
  :resource-paths ["config"]
  :target-path "out/"
  :aliases {"dumbrepl" ["trampoline" "run" "-m" "clojure.main/main"]})

基本上,我添加了test.generative,并让它在启动时执行(use 'dev)

然后输入项目并输入lein repl,得到错误:

代码语言:javascript
复制
Exception in thread "main" java.io.FileNotFoundException: Could not locate clojure/tools/namespace/find__init.class or clojure/tools/namespace/find.clj on classpath: 
....
at io.pedestal.app_tools.server$eval3008$loading__4910__auto____3009.invoke(server.clj:12)
....
at dev$eval1071$loading__4910__auto____1072.invoke(dev.clj:1)

很明显,当(use 'dev)运行时,有些事情就会乱了套。我真的不知道是什么。

如果有人想要尝试一下,我会把上面的步骤放到git@github.com:samedhi/generative app.git的项目中,这样您就可以简单地

代码语言:javascript
复制
> git clone git@github.com:samedhi/generative-app.git
> cd generative-app
> lein repl

谢谢你的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-16 07:59:12

错误来自clojure.tools.namespace。

运行lein deps :tree以显示依赖树-在本例中,相关的位元是:

代码语言:javascript
复制
[io.pedestal/pedestal.app-tools "0.1.11-20130719.140954-2"]
   [org.clojure/tools.namespace "0.2.1"]

代码语言:javascript
复制
[org.clojure/test.generative "0.4.0"]
  [org.clojure/tools.namespace "0.1.1"]

您可以看到冲突- test.generative 0.4.0依赖于早期版本的tools.namespace

project.clj的相关行中添加排除项

代码语言:javascript
复制
[org.clojure/test.generative "0.4.0" :exclusions [org.clojure/tools.namespace]]

这将使项目编译,您可以运行(use dev)(start)。但是,在排除tools.namespace 0.1.1之后,test.generative将不再工作(如果它依赖于tools.namespace 0.1.1中的函数并随后不再推荐),这是有风险的。希望一切都会好起来,但如果不是,您可能需要等待test.generative赶上tools.namespace的更高版本。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18263738

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档