java – 环境变量CLASSPATH <> Clojure的CLASSPATH.为什么?

前端之家收集整理的这篇文章主要介绍了java – 环境变量CLASSPATH <> Clojure的CLASSPATH.为什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在这里,我检查环境变量CLASSPATH
daniel @ daniel-laptop:〜/ ps / clojure / projects / ring-tutorial $echo $CLASSPATH
/家庭/丹尼尔/ PS / Clojure的/项目/环教程/ src目录

在这里,我检查java认为它是什么.
daniel @ daniel-laptop:〜/ ps / clojure / projects / ring-tutorial $lein repl
Clojure 1.1.0
用户=> (System / getProperty“java.class.path”)
“SRC /:类/:/首页/丹尼尔/ .m2目录/库/ leiningen / leiningen / 1.1.0 / leiningen-1.1.0-standalone.jar:LIB / Clojure的-1.1.0.jar:LIB / servlet的API -2.5-6.1.14.jar:LIB /公地-IO-1.4.jar:LIB / CLJ-堆栈跟踪-0.1.0.jar:LIB / Clojure的-的contrib-1.1.0.jar:LIB /环devel的-0.2 .0.jar:LIB /码头-util的-6.1.14.jar:LIB / CLJ-HTML-0.1.0.jar:LIB /环码头适配器-0.2.0.jar:LIB /码头-6.1.14的.jar:LIB /环形芯-0.2.0.jar:LIB /公地文件上传-1.2.1.jar:LIB /环servlet的0.2.0.jar:LIB /公地编解码器-1.4.jar:”

如您所见,这两种反应完全不同.我很确定我必须误解我应该在哪里编辑CLASSPATH变量以使java“得到它”,除了我发现的所有内容都说这应该有效.那是什么交易?莱宁根是否会产生自己奇怪的叛徒叛变事件?我在编辑一个完全不相关的变量吗?任何帮助非常感谢.

解决方法

$CLASSPATH在这里确实完全无关紧要.如果在命令行上没有提供类路径信息,那么java-the-JVM-launcher-program将使用它; Leiningen为JVM提供了适合您正在处理的任何项目的类路径.

在这种特殊情况下,“/ home /…/ ring-tutorial / src”对于Ring教程来说不是一个非常有用的类路径,因为它只包含Ring教程的源代码而不包含Clojure jar(这是必要的)对于运行Clojure代码而言,Ring jars(Ring是一个多模块项目)或Ring依赖的任何其他jar. Leiningen生成的类路径可能看起来很长,但它的所有组件都需要存在.

顺便说一句,如果你刚刚开始使用Clojure,我建议你坚持使用你的工具链的类路径管理工具(这可能意味着Emacs lein swank或者某些IDE是Clojure插件),如果可能的话.否则,关于SO的Clojure类路径问题有很多问题,还有关于你可以google的主题的大量其他资源……但是现在该工具支持相当强大,你通常不需要通过一方面,这只是在开始时最好避免的痛苦.

猜你在找的Java相关文章