问题
compiling clojure files generate .class files in classes directory. Since classes direct is child to current directory so for running a java program which is calling clojure will be javac -cp classes CalculateSum.java. How to run ?? java CalculateSum isn't possible since class files are in child directory classes. java -cp classes CalculateSum isn't working.
回答1:
Compile by javac
>dir /d /b
chapter_2
>dir /b chapter_2
CalculateSum.java
>javac chapter_2/CalculateSum.java
>dir /b chapter_2
CalculateSum.class
CalculateSum.java
clojure execute command ex.)
java -cp .;lib;lib/jline-1.0.jar;lib/clojure.jar;lib/clojure-contrib-1.2.0.jar jline.ConsoleRunner clojure.main
move chapter_2 directory to under lib
DEMO:
Clojure 1.2.1
user=> (import 'chapter_2.CalculateSum)
chapter_2.CalculateSum
user=> (. CalculateSum main (make-array String 0))
Enter first number to add:
2.3
Enter second number to add:
4.5
2.3 + 4.5 = 6.8
nil
来源:https://stackoverflow.com/questions/7685698/clojure-compilation-and-running-with-cygwin