【发布时间】:2012-02-10 10:25:58
【问题描述】:
在 Windows 上安装 Leiningen 的正确方法是什么?我抓住了脚本并进行了自我安装。尝试运行 lein new tutorial 并收到此错误:
线程“main”中的异常 java.lang.RuntimeException: java.io.FileNotFoundExcep 化:在类上找不到 leiningen/core__init.class 或 leiningen/core.clj 小路: 在 clojure.lang.Util.runtimeException(Util.java:165) 在 clojure.lang.Compiler.eval(Compiler.java:6476) 在 clojure.lang.Compiler.eval(Compiler.java:6431) 在 clojure.core$eval.invoke(core.clj:2795) 在 clojure.main$eval_opt.invoke(main.clj:296) 在 clojure.main$initialize.invoke(main.clj:315) 在 clojure.main$script_opt.invoke(main.clj:339) 在 clojure.main$main.doInvoke(main.clj:426) 在 clojure.lang.RestFn.invoke(RestFn.java:482) 在 clojure.lang.Var.invoke(Var.java:417) 在 clojure.lang.AFn.applyToHelper(AFn.java:178) 在 clojure.lang.Var.applyTo(Var.java:518) 在 clojure.main.main(main.java:37) 原因:java.io.FileNotFoundException:找不到 leiningen/core_init。 类路径上的类或 leiningen/core.clj: 在 clojure.lang.RT.load(RT.java:430) 在 clojure.lang.RT.load(RT.java:398) 在 clojure.core$load$fn_4610.invoke(core.clj:5386) 在 clojure.core$load.doInvoke(core.clj:5385) 在 clojure.lang.RestFn.invoke(RestFn.java:408) 在 clojure.core$load_one.invoke(core.clj:5200) 在 clojure.core$load_lib.doInvoke(core.clj:5237) 在 clojure.lang.RestFn.applyTo(RestFn.java:142) 在 clojure.core$apply.invoke(core.clj:602) 在 clojure.core$load_libs.doInvoke(core.clj:5271) 在 clojure.lang.RestFn.applyTo(RestFn.java:137) 在 clojure.core$apply.invoke(core.clj:604) 在 clojure.core$use.doInvoke(core.clj:5363) 在 clojure.lang.RestFn.invoke(RestFn.java:408) 在用户 $eval1.invoke(NO_SOURCE_FILE:1) 在 clojure.lang.Compiler.eval(Compiler.java:6465) ... 11 更多
得到这个后,我将它添加到我的类路径中: C:\Users\Owner.lein\self-installs\leiningen-2.0.0-SNAPSHOT-standalone.jar 再次运行并得到同样的错误。我错过了什么?
更新 根据@mtyaka 的建议使用 1.6.2 版本
现在我收到此错误:
线程“main”中的异常 java.lang.RuntimeException: java.lang.NoSuchMethodErr 或:clojure.lang.KeywordLookupSite.(ILclojure/lang/Keyword;)V 在 clojure.lang.Util.runtimeException(Util.java:165) 在 clojure.lang.Compiler.eval(Compiler.java:6476) 在 clojure.lang.Compiler.eval(Compiler.java:6431) 在 clojure.core$eval.invoke(core.clj:2795) 在 clojure.main$eval_opt.invoke(main.clj:296) 在 clojure.main$initialize.invoke(main.clj:315) 在 clojure.main$script_opt.invoke(main.clj:339) 在 clojure.main$main.doInvoke(main.clj:426) 在 clojure.lang.RestFn.invoke(RestFn.java:482) 在 clojure.lang.Var.invoke(Var.java:417) 在 clojure.lang.AFn.applyToHelper(AFn.java:178) 在 clojure.lang.Var.applyTo(Var.java:518) 在 clojure.main.main(main.java:37) 引起:java.lang.NoSuchMethodError: clojure.lang.KeywordLookupSite.(IL clojure/lang/关键字;)V 在 leiningen.util.paths$native_arch_path.(paths.clj:32) 在 leiningen.util.paths_init.load(Unknown Source) 在 leiningen.util.paths_init.(Unknown Source) 在 java.lang.Class.forName0(本机方法) 在 java.lang.Class.forName(未知来源) 在 clojure.lang.RT.loadClassForName(RT.java:2030) 在 clojure.lang.RT.load(RT.java:417) 在 clojure.lang.RT.load(RT.java:398) 在 clojure.core$load$fn__4610.invoke(core.clj:5386) 在 clojure.core$load.doInvoke(core.clj:5385) 在 clojure.lang.RestFn.invoke(RestFn.java:408) 在 clojure.core$load_one.invoke(core.clj:5200) 在 clojure.core$load_lib.doInvoke(core.clj:5237) 在 clojure.lang.RestFn.applyTo(RestFn.java:142) 在 clojure.core$apply.invoke(core.clj:602) 在 clojure.core$load_libs.doInvoke(core.clj:5271) 在 clojure.lang.RestFn.applyTo(RestFn.java:137) 在 clojure.core$apply.invoke(core.clj:602) 在 clojure.core$require.doInvoke(core.clj:5352) 在 clojure.lang.RestFn.invoke(RestFn.java:408) 在 leiningen.core$loading_4414_auto_.invoke(core.clj:1) 在 leiningen.core_init.load(Unknown Source) 在 leiningen.core_init.(Unknown Source) 在 java.lang.Class.forName0(本机方法) 在 java.lang.Class.forName(未知来源) 在 clojure.lang.RT.loadClassForName(RT.java:2030) 在 clojure.lang.RT.load(RT.java:417) 在 clojure.lang.RT.load(RT.java:398) 在 clojure.core$load$fn_4610.invoke(core.clj:5386) 在 clojure.core$load.doInvoke(core.clj:5385) 在 clojure.lang.RestFn.invoke(RestFn.java:408) 在 clojure.core$load_one.invoke(core.clj:5200) 在 clojure.core$load_lib.doInvoke(core.clj:5237) 在 clojure.lang.RestFn.applyTo(RestFn.java:142) 在 clojure.core$apply.invoke(core.clj:602) 在 clojure.core$load_libs.doInvoke(core.clj:5271) 在 clojure.lang.RestFn.applyTo(RestFn.java:137) 在 clojure.core$apply.invoke(core.clj:604) 在 clojure.core$use.doInvoke(core.clj:5363) 在 clojure.lang.RestFn.invoke(RestFn.java:408) 在用户 $eval1.invoke(NO_SOURCE_FILE:1) 在 clojure.lang.Compiler.eval(Compiler.java:6465) ... 11 更多
【问题讨论】:
-
您的常规环境中是否设置了
CLASSPATH变量? Quicktime 对我这样做,它打破了 leiningen。 -
这是我当前的 CLASSPATH .;C:\jruby-1.5.0.RC3\lib\jruby.jar;C:\Program Files (x86)\Java\jre6\lib\ext\QTJava .zip;C:\clojure-1.3.0\clojure-1.3.0.jar;C:\users\owner\.lein\self-installs\leiningen-1.6.2-standalone.jar
-
在 CLASSPATH 中没有 lein 时我得到同样的错误
-
您可能想在 leiningen google 群组上发帖。
标签: clojure classpath leiningen