略过了废话不想翻译...
Leiningen 能够帮助你去建立、构建、测试、打包还有部署你的项目。换句话说,它是你须要的一个能够一站式管理应用相关内容的工具。html
这段不想翻译啦。就是说 Clojure 的 Leiningen 相似于 Maven。
使用了 Leiningen 后,你就能够不用担忧任何的关于下载你的应用所使用包的问题了。你只要在一开始说明关于包最高层级的依赖,它就会会自动帮你自动的加载进来。web
安装 Leiningen 也是十分简单的。你能够在官网上下载脚本,运行它就能够了。浏览器
安装我也不想翻译啦。
使用下面的命令就能够简单的建立一个项目了:app
lein new myapp
打开新建项目的文件夹以后,在 src 文件夹下,咱们能看到一个叫作 myapp 的文件夹,里面就有一个源代码文件 core.clj
:eclipse
(ns myapp.core) (defn foo "I don't do a whole lot." [x] (println x "Hello, World!"))
注意,这个命名空间的声名和文件的结构是匹配的,由于core
文件在myapp
文件夹中,因此它的名字是:myapp.core
。webapp
在项目myapp
之中,有一个文件project.clj
,这个文件之中包含了对于咱们这个应用的描述。
在仔细审视这个文件以后,你会发现这个他是使用标准的Clojure语法写成的包括了应用名称、版本号、url地址以及依赖的包。工具
(defproject myapp "0.1.0-SNAPSHOT" :description "FIXME: write description" :url "http://example.com/FIXME" :license {:name "Eclipse Public License" :url "http://www.eclipse.org/legal/epl-v10.html"} :dependencies [[org.clojure/clojure "1.5.1"]])
project.clj
文件也支持咱们进行各类个样方面的对于应用程序的管理。举一个例子,咱们能够设置在myapp.core
中的foo
方法做为其在应用中的入口点,使用:main
关键词进行设置。测试
(defproject myapp "0.1.0-SNAPSHOT" :description "FIXME: write description" :url "http://example.com/FIXME" :license {:name "Eclipse Public License" :url "http://www.eclipse.org/legal/epl-v10.html"} :dependencies [[org.clojure/clojure "1.5.1"]] ;;this will set foo as the main function :main myapp.core/foo)
如今在终端之中就可使用lein run
命令来运行这个应用。由于foo
须要一个参数,因此咱们能够传入一个:this
lein run First ;-> First Hello, World!
在前面这个例子之中,咱们建立了一个很是简单的应用,只依赖于Clojure就能够运行。若是咱们要使用它来建立一个互联网应用,咱们须要写不少的样板文件来确保它能够正确的运行。让咱们来看看如何使用Leiningen来建立一个已经为咱们设置好样板的webapp。url
将模版名称提供给lein
脚本,在建立项目以后就可使用它了。
这些模版自身是使用了lein-newnew plug-in
的Clojure项目,晚些时候咱们将看看怎么本身来作『模版』。
而如今,咱们将要使用compojure-app
来建立咱们接下来的一个应用。
在执行lein
脚本的时候,模版的名称要跟在关键词new
的后面,而后再跟上应用的名称。因此,咱们只须要作下面这一步,而后再等待应用构建完成就能够了:
lein new compojure-app guestbook
当咱们运行这个应用的时候,咱们能够看到终端会有以下的输出,而后终端会打开一个新的浏览器窗口来显示它的主页:
lein ring server guestbook is starting 2013-07-14 18:21:06.603:INFO:oejs.Server:jetty-7.6.1.v20120215 2013-07-14 18:21:06.639:INFO:oejs.AbstractConnector: StartedSelectChannelConnector@0.0.0.0:3000 Started server on port 3000
如今,你应该知道如何去建立和运行你的应用程序了,咱们来看看怎么去编辑它。