Clojure 同时运行多个lein任务
我目前是莱宁根项目的新手。我想动态地使用Clojure 同时运行多个lein任务,clojure,leiningen,Clojure,Leiningen,我目前是莱宁根项目的新手。我想动态地使用lein-less和minify-assets将less编译成css,所以我发现我应该对less文件使用lein-less-auto,对javascripts和HTML文件使用lein-minify-assets-watch 我正在使用lein cascade来操作它们,但它仍然在lein less auto任务中,而不是去lein minify assets watch 这是我的项目代码 (defproject indecorlein "0.1.0-SN
lein-less
和minify-assets
将less编译成css,所以我发现我应该对less文件使用lein-less-auto
,对javascripts和HTML文件使用lein-minify-assets-watch
我正在使用lein cascade
来操作它们,但它仍然在lein less auto
任务中,而不是去lein minify assets watch
这是我的项目代码
(defproject indecorlein "0.1.0-SNAPSHOT"
:description "FIXME: write description"
:url "http://example.com/FIXME"
:license {:name "Eclipse Public License"
:url "http://www.eclipse.org/legal/epl-v10.html"}
:dependencies [[org.clojure/clojure "1.8.0"]]
:plugins [[lein-asset-minifier "0.4.3"]
[lein-less "1.7.5"]
[lein-cascade "0.1.2"]]
:min-lein-version "2.5.0"
:cascade {
"lessc" [["less" "auto"]]
"min" [["minify-assets" "watch"]]
"amp" ["lessc" "min"]
}
:less {:source-paths ["dev/resources/less"]
:target-path "dev/resources/css"}
:minify-assets [
[:html {:source "dev/resources/html" :target "dev/minified/html"}]
[:css {:source "dev/resources/css" :target "dev/minified/css/styles.min.css"}]
[:js {:source ["dev/res/js"] :target "dev/minified/js/amp.min.js"}]])
也许有一个解决方案,或者我只需在单独的终端选项卡上运行任务。问题是
lein-less-auto
和lein-minify-assets-watch
都不会返回。我过去曾在控制台中单独使用过leinlessauto
。您可以使用leinpdo
插件。将其添加到插件中并定义别名:
:plugins [...
[lein-pdo "0.1.1"]]
:aliases {"watch" ["pdo" ["less" "auto"]
["minify-assets" "watch"]]}
然后您可以运行
lein watch
,它将同时运行这两个任务。min和lessc
的双向量似乎有点奇怪。这就是cascade希望指定依赖项的方式吗?也可以尝试使用除min
以外的单词,这是一个尚未成为函数的单词。我将其更改为另一个类似minfy
名称的单词。。它仍然只运行lein-less-auto
。所以,没有解决方案?除了使用不同的终端,这是最简单的。在Unix机器上,您可以将它们放在后台,最后加上&
。还有很多其他操作系统选项可用于创建守护进程。我不知道有哪一个构造带有lein
,可以为您将它们置于背景中。也许这是一个不值得解决的问题。