gpt4 book ai didi

clojure - lein - 如何使用下载的库

转载 作者:行者123 更新时间:2023-12-02 15:21:56 24 4
gpt4 key购买 nike

假设我找到了一个很酷的 clojure 库,例如 https://github.com/clojurewerkz/buffy

现在我想使用它。而且它只存在于 github 上。

我该怎么做?我希望有一个完整的开始到完成 hello world 示例。

我已经阅读过有关将其编译为 jar 并使用它的内容,或者在我的 project.clj 中使用 :dependencies 的内容,但到目前为止还没有完整的示例,而且我是新的。

例如,在Python中,我将git clone存储库到我的工作树的根目录中,任何文件都可以说import buffy

最佳答案

我五分钟前才知道这一点。我想使用 clojure-csv库,这是我使用 Leiningen 所做的

  1. 创建一个新的 leiningen 项目

    lein 新应用程序 csvtest

  2. 现在我有一个名为 csvtest/ 的文件夹。在 csvtest/project.clj 文件中,编辑依赖项部分以添加 clojure-csv github 路径和版本。说实话,我不太确定版本控制是如何工作的:

    :dependencies [[org.clojure/clojure "1.5.1"]
    [clojure-csv/clojure-csv "2.0.1"]]
  3. 现在运行 lein deps 来自动下载项目的所有未解析的依赖项

    $ lein deps
    ...
    Retrieving clojure-csv/clojure-csv/2.0.1/clojure-csv-2.0.1.pom from clojars
    ...
  4. 现在编辑csvtest/src/csvtest/core.clj。让它看起来像这样:

    编辑:(根据 sveri 的评论,我将 :use closjure-csv.core 更改为 :require 行)

    (ns csvtest.core
    (:gen-class)
    (:require [clojure-csv.core :refer [parse-csv]]))

    (defn -main
    "I don't do a whole lot ... yet."
    [& args]
    (println (parse-csv "1,2,3,hello,world")))

    您必须将 (:require [clojure-csv.core :refer [parse-csv]]) 行添加到您的 ns 中,并在 main 中调用parse-csv,库提供的函数之一。从阅读来看,:use 似乎已被 :require 取代。

    注意:对于任何来自 python 的人(比如我),看起来 :use clojure-csv.core 类似于 fromclosure_csv import * ,这在 python 中也是不好的做法。并且 (:require [clojure-csv.core :refer [parse-csv]]) 就像 from clojure_csv import parse_csv

  5. 使用lein run运行项目。我的输出是

    $ lein run  
    ([1 2 3 hello world])

希望对您有所帮助!

关于clojure - lein - 如何使用下载的库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23175723/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com