Implicitly clean lib/ before running deps. Fixes #61.
This commit is contained in:
parent
607c282a0a
commit
3c86ca585c
2 changed files with 6 additions and 1 deletions
|
@ -16,6 +16,9 @@
|
||||||
javax.jms/jms
|
javax.jms/jms
|
||||||
com.sun.jdmk/jmxtools
|
com.sun.jdmk/jmxtools
|
||||||
com.sun.jmx/jmxri]]]
|
com.sun.jmx/jmxri]]]
|
||||||
|
;; Before fetching dependencies, the contents of the lib/ directory
|
||||||
|
;; will get deleted unless this is set to true.
|
||||||
|
:disable-implicit-clean false
|
||||||
;; Dev dependencies are intended for use only during
|
;; Dev dependencies are intended for use only during
|
||||||
;; development. Projects that depend on this project will not pull
|
;; development. Projects that depend on this project will not pull
|
||||||
;; in its dev-dependencies, and they won't be included in the uberjar.
|
;; in its dev-dependencies, and they won't be included in the uberjar.
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
"Install jars for all dependencies in lib."
|
"Install jars for all dependencies in lib."
|
||||||
(:require [lancet])
|
(:require [lancet])
|
||||||
(:use [leiningen.pom :only [default-repos make-dependency]]
|
(:use [leiningen.pom :only [default-repos make-dependency]]
|
||||||
|
[leiningen.clean :only [empty-directory]]
|
||||||
[clojure.java.io :only [file]])
|
[clojure.java.io :only [file]])
|
||||||
(:import [org.apache.maven.artifact.ant DependenciesTask RemoteRepository]
|
(:import [org.apache.maven.artifact.ant DependenciesTask RemoteRepository]
|
||||||
[org.apache.tools.ant.util FlatFileNameMapper]))
|
[org.apache.tools.ant.util FlatFileNameMapper]))
|
||||||
|
@ -45,6 +46,8 @@
|
||||||
"Download and install all :dependencies listed in project.clj.
|
"Download and install all :dependencies listed in project.clj.
|
||||||
With an argument it will skip development dependencies."
|
With an argument it will skip development dependencies."
|
||||||
([project skip-dev set]
|
([project skip-dev set]
|
||||||
|
(when-not (:disable-implicit-clean project)
|
||||||
|
(empty-directory (:library-path project)))
|
||||||
(let [deps-task (DependenciesTask.)]
|
(let [deps-task (DependenciesTask.)]
|
||||||
(.setBasedir lancet/ant-project (:root project))
|
(.setBasedir lancet/ant-project (:root project))
|
||||||
(.setFilesetId deps-task "dependency.fileset")
|
(.setFilesetId deps-task "dependency.fileset")
|
||||||
|
@ -54,7 +57,6 @@ With an argument it will skip development dependencies."
|
||||||
(.addConfiguredRemoteRepository deps-task r))
|
(.addConfiguredRemoteRepository deps-task r))
|
||||||
(doseq [dep (project set)]
|
(doseq [dep (project set)]
|
||||||
(.addDependency deps-task (make-dependency dep)))
|
(.addDependency deps-task (make-dependency dep)))
|
||||||
;; TODO: this is starting a rogue thread keeping the JVM from exiting
|
|
||||||
(.execute deps-task)
|
(.execute deps-task)
|
||||||
(.mkdirs (file (:library-path project)))
|
(.mkdirs (file (:library-path project)))
|
||||||
(copy-dependencies (:jar-behavior project)
|
(copy-dependencies (:jar-behavior project)
|
||||||
|
|
Loading…
Reference in a new issue