2013-04-14 74 views
3

我遇到問題,因爲我看到庫與發佈的文檔衝突。我之前安裝正確版本的東西時遇到了一些問題,我想知道這是否是原因。顯示加載的依賴leiningen REPL

是否有任何方法可以打印出哪些罐子已裝入repl中,以便我可以檢查?

回答

2
(System/getProperty "java.class.path") 
+0

這不會告訴我哪個特定的罐子被裝入,對不對? – Xodarap

+1

其實jar在類路徑自己獨立的條目由'系統/ getProperty'返回的,即使他們列入,因爲匹配通配符的classpath中('*'在classpath字符串)。 –

6

這也可能有助於:

lein deps :tree - 顯示依賴關係樹,它們會在

[library "version" :exclusions [some-other-lib "version"]]拉 - 排除被一些庫拉在some-other-lib

然後,您可以通過定義自己的依賴關係向量來手動拉入some-other-lib的正確版本。

16

您還可以使用查詢雷音爲

  • 的類路徑lein classpath
  • 的依賴關係樹打印輸出lein deps :tree
0

有幾種選擇:

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

對於boot,我也寫了nha/boot-deps,幫助管理依賴衝突。