2011-09-05 46 views
2

我正在使用cloin的lein(leiningen) - 并编写一个插件来自动执行一些常见任务。我想让我的插件依赖,并调用另一个插件功能 - 但我不知道如何做到这一点,没有什么hacky - 任何想法?从另一个插件调用clojure Leiningen插件

+1

你可以在这里看到一个简单的例子:https://github.com/vbauer/lein-jslint插件“lein-jslint”使用插件“lein-npm”。 –

回答

2

只要将另一个插件声明为您正在使用的插件的依赖关系,然后在您的代码中需要其名称空间并调用所需的函数。

;;; in project.clj 
(defproject your-plugin "0.1.0-SNAPSHOT" 
    :dependencies [... [other-plugin "1.2.3"] ...] 
    ) 

;;; in src/leiningen/your_plugin.clj 
(ns leiningen.your-plugin 
    (:require [leiningen.other-plugin :as other]) 
    ...) 

... (other/foo ...) ... 

参见lein-margauto(它取决于lein-marginalia),用于一个实际的工作示例。