我有这段代码:
(ns test
(:gen-class))
(defn -main
[& args]
(println "hello!"))
但是当我跑java -cp clojure-1.6.0/clojure-1.6.0.jar clojure.main test.clj
时,我没有输出。为什么?如何解决这个问题?
答案 0 :(得分:5)
您可以像这样调用-main
函数:
java -cp clojure-1.6.0/clojure-1.6.0.jar clojure.main -i test.clj -m test
-i
加载文件
-m
在命名空间中启动-main
函数
答案 1 :(得分:1)
ns
和defn
都不会输出任何内容。如果您想通过调用"hello!"
函数来打印-main
,则必须在test.clj
文件的末尾添加函数调用。
(ns test
(:gen-class))
(defn -main
[& args]
(println "hello!"))
(-main)