【问题标题】:Display loaded dependencies in leiningen REPL在 leiningen REPL 中显示加载的依赖项
【发布时间】:2013-04-14 03:07:55
【问题描述】:

我遇到了问题,因为我拥有的库似乎与已发布的文档冲突。我之前在安装正确版本的东西时遇到了一些问题,我想知道这是否是原因。

有什么方法可以打印出 repl 中加载了哪些 jar 以便我检查?

【问题讨论】:

    标签: clojure leiningen


    【解决方案1】:

    您也可以使用查询 lein

    • lein classpath 的类路径
    • 带有lein deps :tree 的依赖树打印输出

    【讨论】:

      【解决方案2】:

      这也可能有帮助:

      lein deps :tree - 显示被拉入的依赖树

      [library "version" :exclusions [some-other-lib "version"]] - 排除被某个库拉入的some-other-lib

      然后,您可以通过定义自己的依赖向量来手动提取正确版本的 some-other-lib

      【讨论】:

        【解决方案3】:
        (System/getProperty "java.class.path")
        

        【讨论】:

        • 这不会告诉我加载了哪些特定的 jar,对吧?
        • 实际上,jar 是 System/getProperty 返回的类路径上它们自己的单独条目,即使它们由于匹配通配符而包含在类路径中(类路径字符串中的*)。
        【解决方案4】:

        有几种选择:

        • 使用 java interrop:(System/getProperty "java.class.path"),(println (seq (.getURLs (java.lang.ClassLoader/getSystemClassLoader))))
        • clojure/java.classpath 包含有用的功能:like system-classpath
        • lein: lein classpathlein deps :tree
        • bootboot show -p,以及boot environnement中的有用功能。不妨看看martinklepsch/boot-deps

        对于boot,我还写了nha/boot-deps,这有助于管理依赖冲突。

        【讨论】:

          猜你喜欢
          • 2012-04-06
          • 1970-01-01
          • 1970-01-01
          • 2013-04-23
          • 2018-07-24
          • 2012-07-07
          • 2016-07-19
          • 2013-09-04
          • 2020-09-10
          相关资源
          最近更新 更多