Я установил Leiningen на Mac OS X 10.7.2 через MacPorts:
$ lein version
Leiningen 1.6.1.1 on Java 1.6.0_29 Java HotSpot(TM) 64-Bit Server VM
У меня также установлены clojure
и clojure-contrib
пакеты:
$ sudo port installed clojure*
The following ports are currently installed:
clojure @1.3.0_0 (active)
clojure-contrib @1.2.0_0 (active)
Чтобы протестировать свою среду, я сгенерировал пример проекта helloworld
, , как описано здесь Zef Hemel . Вот файл project.clj
:
(defproject helloworld "0.1"
:dependencies [[org.clojure/clojure
"1.3.0-master-SNAPSHOT"]
[org.clojure/clojure-contrib
"1.2.0-SNAPSHOT"]]
:main helloworld)
А вот файл helloworld.clj
:
(ns helloworld
(:gen-class))
(defn -main [& args]
(println "Hello world!"))
Когда я пытаюсь скомпилировать этот проект, я получаю несколько сообщений об обновлении ...
$ pwd
/Users/alexreynolds/helloworld
$ sudo lein compile
[INFO] snapshot org.clojure:clojure:1.3.0-master-SNAPSHOT: checking for updates from clojars
Downloading: org/clojure/clojure/1.3.0-master-SNAPSHOT/clojure-1.3.0-master-SNAPSHOT.pom from clojars
[INFO] snapshot org.clojure:clojure-contrib:1.2.0-SNAPSHOT: checking for updates from clojars
Downloading: org/clojure/clojure-contrib/1.2.0-SNAPSHOT/clojure-contrib-1.2.0-SNAPSHOT.pom from clojars
Downloading: org/clojure/clojure/1.3.0-master-SNAPSHOT/clojure-1.3.0-master-SNAPSHOT.jar from clojars
Downloading: org/clojure/clojure-contrib/1.2.0-SNAPSHOT/clojure-contrib-1.2.0-SNAPSHOT.jar from clojars
... а потом целая куча ошибок:
An error has occurred while processing the Maven artifact tasks.
Diagnosis:
Unable to resolve artifact: Missing:
----------
1) org.clojure:clojure:jar:1.3.0-master-SNAPSHOT
Try downloading the file manually from the project website.
Then, install it using the command:
mvn install:install-file -DgroupId=org.clojure -DartifactId=clojure -Dversion=1.3.0-master-SNAPSHOT -Dpackaging=jar -Dfile=/path/to/file
Alternatively, if you host your own repository you can deploy the file there:
mvn deploy:deploy-file -DgroupId=org.clojure -DartifactId=clojure -Dversion=1.3.0-master-SNAPSHOT -Dpackaging=jar -Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id]
Path to dependency:
1) org.apache.maven:super-pom:jar:2.0
2) org.clojure:clojure:jar:1.3.0-master-SNAPSHOT
2) org.clojure:clojure-contrib:jar:1.2.0-SNAPSHOT
Try downloading the file manually from the project website.
Then, install it using the command:
mvn install:install-file -DgroupId=org.clojure -DartifactId=clojure-contrib -Dversion=1.2.0-SNAPSHOT -Dpackaging=jar -Dfile=/path/to/file
Alternatively, if you host your own repository you can deploy the file there:
mvn deploy:deploy-file -DgroupId=org.clojure -DartifactId=clojure-contrib -Dversion=1.2.0-SNAPSHOT -Dpackaging=jar -Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id]
Path to dependency:
1) org.apache.maven:super-pom:jar:2.0
2) org.clojure:clojure-contrib:jar:1.2.0-SNAPSHOT
----------
2 required artifacts are missing.
for artifact:
org.apache.maven:super-pom:jar:2.0
from the specified remote repositories:
clojars (http://clojars.org/repo/),
central (http://repo1.maven.org/maven2)
----------
2 required artifacts are missing.
for artifact:
org.apache.maven:super-pom:jar:2.0
from the specified remote repositories:
clojars (http://clojars.org/repo/),
central (http://repo1.maven.org/maven2)
(NO_SOURCE_FILE:0)
at clojure.lang.Compiler.eval(Compiler.java:5440)
at clojure.lang.Compiler.eval(Compiler.java:5391)
at clojure.core$eval.invoke(core.clj:2382)
at clojure.main$eval_opt.invoke(main.clj:235)
at clojure.main$initialize.invoke(main.clj:254)
at clojure.main$script_opt.invoke(main.clj:270)
at clojure.main$main.doInvoke(main.clj:354)
at clojure.lang.RestFn.invoke(RestFn.java:457)
at clojure.lang.Var.invoke(Var.java:377)
at clojure.lang.AFn.applyToHelper(AFn.java:172)
at clojure.lang.Var.applyTo(Var.java:482)
at clojure.main.main(main.java:37)
Caused by: Unable to resolve artifact: Missing:
----------
1) org.clojure:clojure:jar:1.3.0-master-SNAPSHOT
Try downloading the file manually from the project website.
Then, install it using the command:
mvn install:install-file -DgroupId=org.clojure -DartifactId=clojure -Dversion=1.3.0-master-SNAPSHOT -Dpackaging=jar -Dfile=/path/to/file
Alternatively, if you host your own repository you can deploy the file there:
mvn deploy:deploy-file -DgroupId=org.clojure -DartifactId=clojure -Dversion=1.3.0-master-SNAPSHOT -Dpackaging=jar -Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id]
Path to dependency:
1) org.apache.maven:super-pom:jar:2.0
2) org.clojure:clojure:jar:1.3.0-master-SNAPSHOT
2) org.clojure:clojure-contrib:jar:1.2.0-SNAPSHOT
Try downloading the file manually from the project website.
...
----------
2 required artifacts are missing.
for artifact:
org.apache.maven:super-pom:jar:2.0
from the specified remote repositories:
clojars (http://clojars.org/repo/),
central (http://repo1.maven.org/maven2)
at org.apache.maven.artifact.resolver.DefaultArtifactResolver.resolveTransitively(DefaultArtifactResolver.java:324)
at org.apache.maven.artifact.ant.DependenciesTask.doExecute(DependenciesTask.java:170)
... 38 more
Я пытался self-install
:
$ sudo lein self-install
Downloading Leiningen now...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 9161k 100 9161k 0 0 1889k 0 0:00:04 0:00:04 --:--:-- 2580k
Но со второй попытки compile
я получаю те же предупреждения и ошибки.
Что мне попробовать, чтобы это исправить? Спасибо за ваш совет.