Clojure lein-如何使用下载的库
比如说我找到了一个很酷的clojure图书馆 现在我想用它。它只存在于github上 我该怎么做?我希望有一个完整的开始来完成hello world示例 我读过关于将其编译为jar并使用它,或者在我的project.clj中使用:dependencies的文章,但到目前为止还没有完整的示例,我是新手Clojure lein-如何使用下载的库,clojure,leiningen,Clojure,Leiningen,比如说我找到了一个很酷的clojure图书馆 现在我想用它。它只存在于github上 我该怎么做?我希望有一个完整的开始来完成hello world示例 我读过关于将其编译为jar并使用它,或者在我的project.clj中使用:dependencies的文章,但到目前为止还没有完整的示例,我是新手 例如,在python中,我将git clone复制到我工作树的根目录中,任何文件都可以说import buffy,您可以从Clojars下载/使用它 Clojars链接: 若要将其与一起使用,请将
例如,在python中,我将
git clone
复制到我工作树的根目录中,任何文件都可以说import buffy
,您可以从Clojars下载/使用它
Clojars链接:
若要将其与一起使用,请将其添加到依赖项(在project.clj文件中):
[clojurewerkz/buffy“1.0.0-beta4”]
之后,您可以从项目根文件夹运行lein deps
,以下载依赖项
要直接从Github repos使用依赖项,您可以查看以下内容:使用lein(Clojure的构建工具),您有一个project.clj文件。如果在新项目名称中执行lein,则会得到一个名为“project name”的新项目,其中包含一个project.clj文件。查看该文件,您将在其中看到一个:dependencies条目,如本例所示:
:依赖项[[org.clojure/clojure“1.5.1”]
要包含buffy,您只需查看他们的github站点,找出要使用的版本,然后将其添加到:dependecies列表:
:依赖项[[org.clojure/clojure“1.5.1”]
[clojurewerkz/buffy“1.0.0-beta3”]
现在,您只需执行lein-deps
即可下载依赖项,并在编写代码后lein-run
即可实际运行它
阅读一些关于clojure的信息并查看其文件,以便更好地了解如何使用clojure。我五分钟前才了解到这一点。我想用图书馆,下面是我用
创建一个新的leiningen项目
lein新应用程序csvtest
现在我有一个名为csvtest/
的文件夹。在csvtest/project.clj
文件中,编辑dependencies部分以添加clojure csv github路径和版本。老实说,我不太确定版本控制是如何工作的:
:dependencies [[org.clojure/clojure "1.5.1"]
[clojure-csv/clojure-csv "2.0.1"]]
现在运行lein-deps
自动下载项目的任何未解决依赖项
$ lein deps
...
Retrieving clojure-csv/clojure-csv/2.0.1/clojure-csv-2.0.1.pom from clojars
...
现在编辑csvtest/src/csvtest/core.clj
。让它看起来像这样:
编辑:(根据sveri的评论,我将:使用closjure csv.core
更改为:require
行)
您必须将(:require[clojure-csv.core:refere[parse csv]])
行添加到ns
,它主要调用库提供的函数之一parse csv
。从阅读中,它看起来像是:use
被贬低了,取而代之的是:require
注意:对于任何来自python的人(像我一样),这看起来像是在做:使用clojure csv。core
类似于closure的\u csv import*
,这在python中也是一种不好的做法。和(:require[clojure-csv.core:refere[parse csv]])
类似于来自clojure\u csv import parse\u csv的
使用lein Run
运行项目。我的输出是
$ lein run
([1 2 3 hello world])
我希望这有帮助 请不要使用“:use”进行导入,您可以在此处找到更多最佳做法:
$ lein run
([1 2 3 hello world])