【问题标题】:Workflow for hacking on Clojure libraries using swank-clojure使用 swank-clojure 破解 Clojure 库的工作流程
【发布时间】:2012-01-13 06:19:25
【问题描述】:

是否有针对 Clojure 库进行黑客攻击的典型工作流程?

假设我的应用程序“Foo”依赖于第三方库“Bar”,该库是从存储库中获取的,并通过 lein deps 包含在项目 Foo 中。

然后,假设我想破解库“Bar”,所以我从 github 克隆它。

现在,我想破解我的本地克隆“Bar”,同时处理依赖它的应用程序“Foo”。我希望使用 swank 的一个实例在 Emacs 中打开“Bar”的所有源文件以及“Foo”中的所有源文件。

有没有简单的方法可以做到这一点?

我想改变我的 环境 而不是项目。因此,我不想为“Foo”编辑 project.clj 来完成此操作。

这需要在启动lein swank之前设置类路径,还是有更好的方法?

【问题讨论】:

    标签: clojure workflow slime leiningen swank


    【解决方案1】:

    在您的 Foo 项目中创建一个 checkouts 目录,并在此目录中创建指向您的 Bar 项目克隆的符号链接。

    引用Leiningen FAQ

    :我想同时破解两个项目,但在它们之间切换很烦人。
    A:如果你在你的项目根目录并将其他一些项目根目录符号链接到其中,Leiningen 将允许您并行破解它们。这意味着依赖项的更改将在主项目中可见,而无需经历整个 install/switch-projects/deps/restart-repl 周期,并且检出中的副本将优先于 project.clj 中声明的依赖项。请注意,这不能替代在 :dependencies; 中列出项目。为了方便起见,它只是对其进行了补充。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-18
      • 2015-02-24
      • 1970-01-01
      • 1970-01-01
      • 2011-12-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多