Chi*_*ron 2 jvm clojure jvm-languages classpath
我有一个简单的项目结构:
Base Dir
src ;; Pile of Clojure files
lib ;; Jar files
Run Code Online (Sandbox Code Playgroud)
要导出类路径:$ export CLASSPATH = $ CLASSPATH:src:lib/*
试图运行一个Clojure文件:java -cp $ CLASSPATH -jar lib/clojure.jar src/wizard-game.clj
但是我得到了:
线程"main"中的异常java.io.FileNotFoundException:找不到类路径上的
clojure/contrib/trace_init.class 或clojure/contrib/trace.clj: 引起:java.io.FileNotFoundException:找不到clojure/contrib / classpath上的trace _init.class或clojure/contrib/trace.clj:
好吧,这是一个类路径问题,但是我做错了什么/哪里?
有没有更好的方法来尝试运行它?
更新:
我试过这个命令:
java -classpath $ CLASSPATH clojure.main src/wizard-game.clj
现在运行正常.
从java
有关-jar
选项的手册页:
使用此选项时,JAR文件是所有用户类的源,并忽略其他用户类路径设置.
所以这有点令人失望,但好消息是你可以通过使用不同的启动语法来解决这个问题(在clojure.org上引用):
java -cp $CLASSPATH clojure.main src/wizard-game.clj
Run Code Online (Sandbox Code Playgroud)
或者,使用像Leiningen这样的工具来管理项目的类路径和依赖项!