java – Clojure Lein Classpath Woes

我有一个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的符号

最佳答案
您使用的是哪个版本的Leiningen?新的2版本有一些重大变化,其中之一是:source-path“src /”成为:source-paths [“src /”].可能的解释是您正在尝试将此lein2 project.clj文件与lein1一起使用.

由于我们目前处于过渡期,因此您必须特别注意自己使用的lein版本,如果遵循教程,则教程假设的版本.

您可以在此处详细了解版本之间的差异:https://github.com/technomancy/leiningen/blob/master/NEWS.md

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...