【发布时间】:2016-04-16 12:53:45
【问题描述】:
我一直在研究 Clojure/ClojureScript Web 应用程序的几个项目模板。有些在 Leiningen project.clj 中有以下行
:hooks [leiningen.cljsbuild]
而其他人没有。
这条线的目的是什么?你为什么要使用它,为什么不呢?使用它有优点还是缺点?
【问题讨论】:
我一直在研究 Clojure/ClojureScript Web 应用程序的几个项目模板。有些在 Leiningen project.clj 中有以下行
:hooks [leiningen.cljsbuild]
而其他人没有。
这条线的目的是什么?你为什么要使用它,为什么不呢?使用它有优点还是缺点?
【问题讨论】:
:hooks 选项用于修改内置的 Leiningen 任务。所有细节都在Leiningen's documentation中描述。
leiningen.cljsbuild hooks are adding ClojureScript support in lein's built-in tasks:compile,test,jar。
如果您的项目同时包含 Clojure 和 ClojureScript 文件,这可能会很有用。通过使用钩子,您可以使用 lein 的内置任务在一次运行中将 compile、test 或将它们打包到 jar 中,而不是为 Clojure(内置任务)和带有 lein-cljsbuild 任务的 ClojureScript 单独调用它们。
【讨论】:
:hooks。我已经编辑了我的答案以在 leiningen.cljsbuild 钩子上添加详细信息。