Fix central repo URL, and separate out deps vs pom repo/dependency classes.

This commit is contained in:
Phil Hagelberg 2009-11-15 21:16:31 -08:00
parent 74d3709a85
commit 28e6c72b41
2 changed files with 18 additions and 5 deletions

View file

@ -1,6 +1,6 @@
(ns leiningen.deps
(:require [lancet])
(:use [leiningen.pom :only [make-repository make-dependency default-repos]]
(:use [leiningen.pom :only [default-repos]]
[clojure.contrib.java-utils :only [file]])
(:import [org.apache.maven.model Dependency]
[org.apache.maven.artifact.ant DependenciesTask RemoteRepository]
@ -8,6 +8,17 @@
;; TODO: unify with pom.clj
(defn make-dependency [[dep version]]
(doto (Dependency.)
(.setGroupId (or (namespace dep) (name dep)))
(.setArtifactId (name dep))
(.setVersion version)))
(defn make-repository [[id url]]
(doto (RemoteRepository.)
(.setId id)
(.setUrl url)))
(defn deps
"Install dependencies in lib/"
[project & [skip-dev]]

View file

@ -17,7 +17,7 @@
(.setId id)
(.setUrl url)))
(def default-repos {"central" "http://repo1.maven.org/maven/"
(def default-repos {"central" "http://repo1.maven.org/maven2"
"clojure-snapshots" "http://build.clojure.org/snapshots"})
(defn make-model [project]
@ -35,11 +35,13 @@
(defn make-pom [project]
(doto (Pom.)
(.setId "leiningen-pom")
(.setProject lancet/ant-project)
(.setMavenProject (MavenProject. (make-model project)))))
(defn pom [project & [args]]
;; TODO: prompt if pom.xml exists
(.writeModel (MavenProject. (make-model project))
(writer (file (:root project) "pom.xml"))))
(let [pom-file (file (:root project) "pom.xml")]
(.writeModel (MavenProject. (make-model project))
(writer pom-file))
(println "Wrote pom.xml")
(.getAbsolutePath pom-file)))