2012-06-10 30 views
3

旧的整体clojure.contrib可以从您获得clojure .jar的同一个地方获得.jar,并且您可以通过将类路径指向它来使用它。据我所知,新的模块化贡献在clojure .jar中不可用 - 相反,它们作为github上的源文件存在。你有什么预期的方式来使用它们?比如说,我想在clojure.math.numeric-tower中使用一些东西。我会怎么做?您如何安装clojure模块化贡献?

我找到了How do I install Clojure 1.3 with contribs on RHEL 6.1/JDK7?,但唯一的答案(“使用leiningen”)不够详细,我不知道。 (搜索clojars的数字塔收益率......没有什么)

回答

3

Maven Settings and Repositories所述,所有clojure构件部署的存储库是Sonatype OSS Nexus。如果您不想采用Leiningen或Maven的方式,我仍然建议您考虑一次性实验,但您仍然可以手动从该存储库下载所有工件。具体而言,here的所有上传版本clojure.math.numeric-tower

3

我可以理解不愿意使用leiningen,尽管写这句话花了我的时间多于创建一个新项目。

对于这类问题我平时的第一站是http://dev.clojure.org/display/design/Where+Did+Clojure.Contrib+Go 然后单击最新的版本,并得到我最好的神器和版本,然后添加一行到project.clj的依赖关系部分,像这样

[math.numeric-tower "0.0.1"] 
+0

这不是不愿意使用leiningen。这是一个观察,“使用leiningen”裸指令并没有告诉你如何完成目标。就在这里,您已经使用了两条我不知道如何获取的信息 - 工件ID和版本号。 – collapsinghrung

+0

点击此页面名称下的最新版本链接,这两个链接都列在那里。 –

0

如果你使用Clojure,你应该也使用Leiningen或Maven来管理你的依赖关系。我相信,随着项目变得越来越大,构建需求越来越复杂,这些都是保持复杂依赖关系图的唯一理性方法。

例如,我使用Maven,并在我的项目的pom.xml以下,包括数字依赖:

<dependency> 
     <groupId>org.clojure</groupId> 
     <artifactId>math.numeric-tower</artifactId> 
     <version>0.0.1</version> 
    </dependency> 

所有模块化的Clojure的contrib库可以包括以同样的方式。