【问题标题】:How do I make Leiningen download the source of a required library?如何让 Leiningen 下载所需库的源代码?
【发布时间】:2013-01-01 22:56:54
【问题描述】:

我认为project.clj 中有一些选项,但我没有在 Leiningen 的文档中找到它。

例如我有这个project.clj

(defproject test-app "0.1.0-SNAPSHOT"
            :dependencies [[org.clojure/clojure "1.4.0"]
                           [noir "1.3.0-beta3"]]

如何让 Leiningen 下载 noir 的源代码?我现在只有二进制文件。

【问题讨论】:

    标签: clojure leiningen


    【解决方案1】:

    我发现一个名为 ubersource 的 leiningen 插件非常好用。

    只需将其添加到您的 project.clj 中:

    :plugins [[lein-cljsbuild "1.0.1"]
              [lein-ubersource "0.1.1"]]
    

    然后调用: lein ubersource

    【讨论】:

      【解决方案2】:

      您可以自己手动从http://clojars.org/repo/ 获取罐子。然后打开包装看看。

      当然,如果您愿意,您可以直接访问给定库的源代码(Clojars 页面应该显示 url)。

      不过,请注意 noir 已弃用,建议您改用 Compojure + lib-noir。

      【讨论】:

        【解决方案3】:

        noir 由 clj 文件组成,它们本身就是来源。所以取回jar:$HOME/.m2/repository/noir/noir/1.3.0-beta3/noir-1.3.0-beta3.jar,解压并检查。您还可以使用source 方法检查 REPL 中方法的来源。
        如果您需要 java 库的来源,那么您可能会遇到问题。我不确定 lein 是否支持开箱即用的资源下载。如果您需要下载 java 库的源代码,那么您可以使用 maven:

        1. 生成pom文件:lein pom
        2. 通过mvn dependency:sources下载源:Get source JARs from Maven repository
        3. 源代码将下载到您的本地 maven repo 下 $HOME/.m2/repository

        【讨论】:

        • 好的,我明白了。我不知道本地 Maven 存储库。现在我可以看到 jar 中的源文件。谢谢!
        猜你喜欢
        • 2011-05-27
        • 1970-01-01
        • 2023-04-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-10-16
        • 2011-09-24
        • 1970-01-01
        相关资源
        最近更新 更多