【发布时间】:2012-04-14 01:17:41
【问题描述】:
我有一个 Leiningen project.clj 文件如下:
(defproject insane-noises "1.0.0-SNAPSHOT"
:description "FIXME: write description"
:dependencies [[org.clojure/clojure "1.3.0"]
[overtone "0.6.0"]]
:source-paths ["/Volumes/ramdisk"]
:java-source-paths ["/Volumes/ramdisk"]
:native-path "/Volumes/ramdisk")
现在,当我跑步时
$ lein repl
user=> (seq (.getURLs (java.lang.ClassLoader/getSystemClassLoader)))
路径 /Volumes/ramdisk 不会出现在我的路径中的任何位置。怎么回事?
为 Leiningen 设置类路径的正确方法是什么? (它似乎也忽略了在我的环境中定义的 CLASSPATH 变量。)
编辑:回复评论
user=> (seq (.. Thread currentThread getContextClassLoader getURLs))
nil
编辑:问题已解决。我正在使用
$ lein version
Leiningen 1.7.1 on Java 1.6.0_29 Java HotSpot(TM) 64-Bit Server VM
但是,我显然使用的是 Lein 2.0 的符号
【问题讨论】:
-
查看Thread.currentThread().getContextClassloader()结果是否一样?
-
@hgrey:不,我得到了 nil。
-
一个非常有用的调试类路径问题的工具是
lein classpath命令。例如,当您运行lein repl时,它会向您展示 Leiningen 将在类路径中添加的内容。
标签: java clojure classpath leiningen