如何使用`clojure--main`

如何使用`clojure--main`,clojure,Clojure,阅读clojure-h*时,我发现--main选项: main options: -m, --main ns-name Call the -main function from a namespace with args 具有以下代码: (defn-main “我还没有做很多……还没有。” [&args] (打印“你好,世界!”) 是否可以使用--main参数直接调用-main函数而不使用lein? *clojure=java${java\u OPTS}-jar路径u到\u c

阅读
clojure-h
*时,我发现
--main
选项:

  main options:
    -m, --main ns-name  Call the -main function from a namespace with args
具有以下代码:

(defn-main
“我还没有做很多……还没有。”
[&args]
(打印“你好,世界!”)
是否可以使用
--main
参数直接调用
-main
函数而不使用
lein


*
clojure
=
java${java\u OPTS}-jar路径u到\u clojure.jar“$@”

是。假设-main函数位于文件
/src/foo/core.clj
中,则以下命令将运行它:


java-cp“path\u to\u clojure.jar:src”clojure.main--main foo.core
(注意类路径中的
src

所以这将不适用于
-jar
java选项?foo.core是namespace.filename?这不起作用,因为您需要在类路径的
-main
函数中包含代码。但是如果您的目标是在没有leiningen的情况下运行项目,那么您可以使用
lein uberjar
(它将包含您的代码和所有依赖项,包括Clojure本身)生成可执行jar,然后您就可以运行
java-jar