我是Clojure的新手,開始嘗試構建應用程序。到目前爲止,我所見過的所有關於編譯Clojure程序的教程都涉及到交互性。例如,「加載REPL並輸入(加載文件」this-that-that「)即可運行。這很好,但這還不夠。構建和部署Clojure應用程序的最佳實踐:好的教程?
我很習慣編輯編譯運行的習語的C語言或德爾福語言,我本能地驅動編輯,然後打「Mx編譯」
問題是,「lein uberjar」,我理解是相當於「make」,是痛苦地慢甚至是爲了一個hello世界而執行,所以我必須弄清楚這個「互動開發」的東西是如何工作的,停止使用像快速製作的uberjar,並且只在一天結束時才保存。
我在建立時使用lein uberjar的另一件事是,s購物中心GUI應用程序我正在編譯過程中彈出框架,就好像它們在編譯時執行時一樣。這對我來說似乎有點違反直覺;它不像我想象的那樣與「製造」很相似。
我知道開發事物的Lisp方式是在REPL中交互式工作的,我不想改變:我想適應這種生活方式。不幸的是,我沒有看到如何做文件的形式。例如,如何重置機器的當前狀態。只是在不能進行某種重置的情況下繼續編譯單個片段似乎很麻煩。
我在Clojure(和Lisp)上看到的大多數教程似乎都將重點放在了對REPL的黑客攻擊上。部署應用程序的最佳實踐對我來說仍然是一個謎。我的用戶只是成爲用戶;他們不會成爲將文件加載到REPL的開發人員。
所以,這裏是我的問題:任何資源的良好信息或教程建立一個Clojure應用程序的整個過程,包括部署? (注意:我已經安裝並運行了所有的必備軟件(例如Emacs,Slime,Leiningen等),所以這不是一個問題)。
感謝您的信息和鏈接! lein運行插件看起來會幫助我。當然,這導致了另一個問題:http://stackoverflow.com/questions/2393705/how-to-install-a-leiningen-plugin – kes 2010-03-06 18:54:43
不客氣!剛剛回答了這個新問題。 :-) – 2010-03-06 19:01:41