如果我启用 clojure-couchdb 或 swank-clojure 那么lein deps
失败,因为 org.apache.maven:super-pom:jar:2.0 丢失
:dependencies [[org.clojure/clojure "1.1.0-master-SNAPSHOT"]
[org.clojure/clojure-contrib "1.0-SNAPSHOT"]
[clojure-http-client "1.0.0-SNAPSHOT"]
[org.apache.activemq/activemq-core "5.3.0"]
; [org.clojars.the-kenny/clojure-couchdb "0.1.3"]
; [org.clojure/swank-clojure "1.1.0"]
])
这个错误:
Path to dependency:
1) org.apache.maven:super-pom:jar:2.0
2) org.clojure:swank-clojure:jar:1.1.0
----------
1 required artifact is missing.
for artifact:
org.apache.maven:super-pom:jar:2.0
from the specified remote repositories:
clojars (http://clojars.org/repo/),
clojure-snapshots (http://build.clojure.org/snapshots),
central (http://repo1.maven.org/maven2)
什么是超级pom。为什么这些软件包需要它以及我在哪里可以获得它。
我认为这只是意味着 Maven 无法满足您指定的依赖关系。我查了一下没有org.clojure/swank-clojure
您的消息提到的三个存储库中的任何一个中的工件。对于 clojure-couchdb,您正在使用的版本——据我所知,通过查看GitHub 上的 project.clj 文件 http://github.com/the-kenny/clojure-couchdb/blob/master/project.clj- 依赖于取决于org.clojure/clojure-http-client "1.0.0-SNAPSHOT"
,它也不存在于存储库中。
解决此问题的一种方法是将所需的 jar 安装到本地存储库中。 (我似乎不记得确切的命令...将在一分钟内查找它。参见例如这一页 http://maven.apache.org/plugins/maven-install-plugin/usage.html以获得说明。)然后 Maven 就会从那里获取它们。
(顺便说一句,如果你想使用 Clojure + contrib 1.1.0,你可以使用"1.1.0"
作为现在的版本字符串。这对双方来说都是org.clojure/clojure
and org.clojure/clojure-contrib
.)
哦,还有关于超级 POM——来自这一页 http://maven.apache.org/guides/introduction/introduction-to-the-pom.html#Super_POM在 Maven 的文档中:
Super POM 是 Maven 的默认 POM。除非显式设置,否则所有 POM 都会扩展 Super POM,这意味着 Super POM 中指定的配置将由您为项目创建的 POM 继承。
至于它是如何进入你的错误消息的,老实说我不知道。您可以将“maven”标签添加到这个问题中,或者只是用该标签提出一个单独的问题,以获得一些 Maven 专家的帮助。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)