在Clojure中更新本地依赖项

时间:2013-07-17 05:41:39

标签: clojure leiningen

我当前的项目使用lein-sub分成多个子项目。核心子项目取决于其他子项目。现在,我通常正在完成repl并只是重新编译当前的命名空间以获得更新的结果;但是,每当我更新子项目并尝试重新编译该命名空间时,我都无法获得这些项目的更新结果。我试图删除target/中的所有内容并重新安装依赖项,但没有任何工作。

我如何能够以最快的方式重新加载子项目?

1 个答案:

答案 0 :(得分:3)

lein-sub不会将您的子项目放在类路径上;如果它们完全可用,我希望这是由于某个时候发出的lein sub install

对于同时进行交互式开发的类型,您可以询问是否可以使用Leiningen的内置结帐功能。只需在顶级项目的根目录中创建一个名为checkouts的目录,然后在其中创建指向依赖项根目录的符号链接。您仍然需要将:dependencies添加到project.clj,但会使用结帐中的新代码。然后,您可以在顶层项目中运行REPL,同时处理所有这些REPL,从依赖项中重新加载各个名称空间,就像使用顶级项目中的那些名称空间一样。

有关详细说明,请参阅the tutorial(链接到master上的版本)。