2013-02-08 76 views

回答

5

更新:也许有一些希望, 见https://github.com/cemerick/pomegranate

以前:

简短的回答是肯定的 - 你必须重新启动JVM进程。

我知道没有更好的方式来更新生活repl中的依赖关系。 Leiningen(由nrepl-jack-in调用)将管理依赖关系,并仅在重新启动时设置类路径。试图做一些动态和聪明的事情是非常脆弱的。

下打出了文本是事实属实,但在片刻的思索仿佛那些坏主意,我已经标记它作为这样......

如果你有一个本地的依赖(如JAR文件),你可以使用 弃用功能 add-classpath在repl。但是你会进入龙类沼泽的java类加载器。

1

石榴存在之前,我写了我自己的库来动态加载依赖关系。

https://github.com/bmillare/dj

lein2的释放,以及它如何被窝里可以使用pomegrante后,我重写DJ使用此下方。所以,即使你不使用'dj',它也可以作为参考来看看它在做什么。

0

重新启动REPL似乎是最简单的方法。这是可以做到 有:

M-x cider-restart 

也出现以完成lein deps。因此,添加新依赖项的整个过程 只需将require添加到 您的project.clj,然后调用cider-restart


另一个(很方便)的方法是使用 clj-refactor。 添加神器C-c m a pcljr-add-project-dependency) 将提示您想要的版本,自动把新 依赖到您project.clj文件,并重新加载会话

相关问题