这是第二个问题后, 是否有内Leiningen独立Clojure的包?
例如,我有一个文件hello_world.clj
,我可以用它运行
java -cp clojure.jar clojure.main hello_world.clj
。
由于雷音已经包含了Clojure的 (因为我可以运行lein repl
直接),是有办法做同样的事情一样
lein script hello_world.clj
说谎?
这是第二个问题后, 是否有内Leiningen独立Clojure的包?
例如,我有一个文件hello_world.clj
,我可以用它运行
java -cp clojure.jar clojure.main hello_world.clj
。
由于雷音已经包含了Clojure的 (因为我可以运行lein repl
直接),是有办法做同样的事情一样
lein script hello_world.clj
说谎?
使用LEIN-EXEC插件,例如从readme.md(用“LEIN”更新,而不是“lein2”)
cat foo.clj | lein exec
lein exec -e '(println "foo" (+ 20 30))'
lein exec -ep "(use 'foo.bar) (pprint (map baz (range 200)))"
lein exec -p script/run-server.clj -p 8088
lein exec ~/common/delete-logs.clj
有几种方法与lein repl
:
cat your_file.clj | lein repl
cat your_file.clj | lein repl
echo '(load-file "your_file.clj")' | lein repl
echo '(load-file "your_file.clj")' | lein repl
lein repl
(load-file "your_file.clj")
2
leiningen可以创建一个“uberjar”为您解决所有的依赖....
lein uberjar
将创建目标子目录你一个罐子。 该罐将包含在你列出的所有依赖project.clj
,所以你不必担心构建复杂的类路径来调用你的代码。
您可以参考这个uberjar如以正常的方式在Java类路径中的一个条目,或者指定在一个主类project.clj
调用它作为一个可执行的JAR。
例如project.clj
是这样的:
(defproject clj-scratch "1.0.0-SNAPSHOT"
:description "FIXME: write description"
:dependencies [[org.clojure/clojure "1.4.0"]
:main clj-scratch.core)
将调用-main
函数clj-scratch.core namespace
如果你运行:
java -jar target/clj-scratch-1.0.0-SNAPSHOT-standalone.jar