[英]Clojure / Lein / Package into Jar
在过去的6个月中,我一直在运行自己的Clojure应用。
即,每当我要运行该应用程序时,我都会加载clojure repl,然后输入:(load-file“ src / run.clj”)...它将运行我的应用程序。
然后,clojure加载所有我的* .clj文件,对其进行编译并运行。
我最近切换到了Lein。 我想“提前编译/打包”我的代码,以便可以使用Main方法获得一个jar,然后通过“ java ...”直接在命令行上运行它,而不必加载Clojure / Lein代表。
对我来说很明显,我需要进行一些RTFMing。 但是,如果有人可以向我指出一个好的教程,将不胜感激。
谢谢!
官方的lein教程中还有一个不错的教程 。 我只是提供这些信息,以防将来我们遇到任何死链接。
1)您首先需要通过将:main
添加到project.clj来指定主命名空间
(defproject yourproject "0.1"
:dependencies [[org.clojure/clojure "1.4.0"]]
:main yourproject.core)
2)在指定的主命名空间中,必须添加(:gen-class)
并且必须使用(defn -main ...)
指定主函数
(ns yourproject.core
(:gen-class))
(defn -main [& args]
(println "This is your crazy project!"))
3)运行uberjar
创建独立的jar
lein uberjar
4)使用java -jar
运行程序
java -jar yourproject.jar
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.