开始吧

Clojure是一个相对来说很新的语言。在经过一些年的努力之后,Clojure的第一版是在2007年10月16日发布的。Clojure的主要部分被称为 “Clojure proper” 或者 “core”。你可以从这里下载: http://clojure.org/downloads . 你也可以使用 Leiningen 。最新的源代码可以从它的Git库下载.

“Clojure Contrib“是一个大家共享的类库列表。其中有些类库是成熟的,被广泛使用的并且最终可能会被加入Clojure Proper的。但是也有些库不是很成熟,没有被广泛使用,所以也就不会被包含在Conjure Proper里面。所以Clojure Proper里面是鱼龙混杂,使用的时候要自己斟酌,文档在这里: http://richhickey.github.com/clojure-contrib/index.html

对于一个Clojure Contrib, 有三种方法可以得到对应的jar包. 首先你可以下载一个打包好的jar包。其次你可以用maven 来自己打个jar包. Maven可以从这里下载 http://maven.apache.org/ . 打包命令是 “ mvn package “. 再其次你可以用ant. ant可以从这里下载 http://ant.apache.org/ 。命令是: “ ant -Dclojure.jar={path} “.

要从最小的源代码来编译clojure, 我们假设你已经安装了 GitAnt , 运行下面的命令来下载并且编译打包Clojure Proper和Clojure Contrib:

git clone git://github.com/richhickey/clojure.git
cd clojure
ant clean jar
cd ..
git clone git://github.com/richhickey/clojure-contrib.git
cd clojure-contrib
ant -Dclojure.jar=../clojure/clojure.jar clean jar

下一步,写一个脚本来运行Read/Eval/Print Loop (REPL) 以及运行 Clojure 程序. 这个脚本通常被命名为”clj”. 怎么使用REPL我们等会再介绍. Windows下面,最简单的clj脚本是这样的(UNIX, Linux以及 Mac OS X下面把 %1 改成 $1):

java -jar /path/clojure.jar %1

这个脚本假定 java 在你的 PATH 环境变量里面. 为了让这个脚本更加有用:

  • 把经常使用的JAR包比如 “Clojure Contrib” 以及数据库driver添加到classpath里面去( -cp ).
  • 使clj更好用:用 rlwrap (利用keystrokes来支持的) 或者 JLine 来得到命令提示以及命令历史提示。
  • 添加一个启动脚本来设置一些特殊变量(比如 *print-length*和 *print-level* ), 加载一些常用的、不再 java.lang 里面的包 加载一些常用的不再 clojure.core 里面的函数并且定义一些常用自定义的函数.

使用这个脚本来启动REPL我们会等会介绍. 用下面这个命令来运行一个clojure脚本(通常以clj为后缀名):

clj source-file-path

更多细节看这里 http://clojure.org/getting_started 以及这里: http://clojure.org/repl_and_main 。同时Stephen Gilardi 还提供了一个脚本: http://github.com/richhickey/clojure-contrib/raw/master/launchers/bash/clj-env-dir

为了更充分的利用机器的多核,你应该这样来调用: “ java -server ... “.

提供给Clojure的命令行参数被封装在预定义的变量 *command-line-args*里面。