今回は、Clojureの開発環境について紹介しましょう。
Clojureユーザには、LISPユーザが多いらしく、Emacs系開発環境が人気のようです。
代表的なものとしては、
といった組み合わせがよく使用されていて、さまざまなツールも用意されているようです。
Leiningenは、Clojure用の開発ツールで、Java開発におけるMavenに相当するものです。
普通に、Mavenリポジトリも使用可能です。
ですから、Clojure単体での開発ならば、これで十分です。
しかし、私のようにJavaからClojureを呼び出すような開発をしたい場合、
普段から使用しているEclipse環境で開発したいと思いますよね。
今回は、Eclipseを使う以下の環境を紹介します。
- Eclipse + Counterclockwise + Maven + clojure-maven-plugin + Clojars
- Counterclockwiseは、Clojure開発用のEclipseプラグインです。
- clojure-maven-pluginは、Clojure開発用のMavenプラグインです。
- Clojarsは、Clojureのライブラリ群を集めた公開リポジトリです。

それでは、環境構築の手順を順番にみていきましょう。
以下の説明は、Eclipse + Maven でのJava開発の経験があり、
その開発環境が既に手元にあることを前提にしています。
- まず、Eclipse + Maven の Java開発環境を用意します。
- CounterclockwiseをEclipseにインストールします。
インストール方法は、リンク先を参照してください。
尚、Eclipse3.6であれば、Eclipse Marketplace から簡単に探してインストールすることができます。 - clojure-maven-pluginをインストールします。
ソースコード配布の形態なので、リンク先からソースアーカイブをダウンロードして、ローカルで展開し、展開先のディレクトリで、mvn install を実効します。 - Eclipseを起動し、Clojure/Java開発で使用するJavaのMavenプロジェクトを新規作成またはインポートします。
- EclipseのProject Explore Viewで使用するプロジェクトを選択し
[右クリック]-[Enable/disable clojure language support]
(右図参照) - プロジェクト配下に以下のフォルダを作成する。
src/main/clojure
src/test/clojure - プロジェクトのpom.xmlに以下の要素を追加する。
- 《 pom.xmlへの追加部分 》
<dependencies> <dependency> <groupId>org.clojure</groupId> <artifactId>clojure</artifactId> <version>1.2.0</version> </dependency> <dependency> <groupId>org.clojure</groupId> <artifactId>clojure-contrib</artifactId> <version>1.2.0</version> </dependency> <dependency> <groupId>swank-clojure</groupId> <artifactId>swank-clojure</artifactId> <version>1.2.1</version> </dependency> </dependencies> <repositories> <repository> <id>clojars</id> <url>http://clojars.org/repo</url> </repository> <repository> <id>clojure-releases</id> <url>http://build.clojure.org/releases</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories> <build> <plugins> <plugin> <groupId>com.theoryinpractise</groupId> <artifactId>clojure-maven-plugin</artifactId> <version>1.3.3</version> <executions> <execution> <id>compile-clojure</id> <phase>compile</phase> <goals> <goal>compile</goal> </goals> </execution> <execution> <id>test-clojure</id> <phase>test</phase> <goals> <goal>test</goal> </goals> </execution> </executions> <configuration> <sourceDirectories> <sourceDirectory>src/main/clojure</sourceDirectory> </sourceDirectories> <testSourceDirectories> <testSourceDirectory>src/test/clojure</testSourceDirectory> </testSourceDirectories> </configuration> </plugin> </plugins> </build>
- プロジェクトの.classpathファイルを編集する。
- 《 .classpathファイルの追加部分 》
<classpath> <classpathentry kind="src" path="src/main/clojure" /> <classpathentry kind="src" path="src/test/clojure" /> </classpath>
- 《 .classpathファイルの削除部分 》
<classpath> <classpathentry kind="lib" path="clojure.jar" sourcepath="clojure-src.jar"/> <classpathentry kind="lib" path="clojure-contrib.jar" sourcepath="clojure-contrib-src.jar"/> </classpath>
いかがでしたでしょうか。
単体パッケージのインストールで完了というわけにはいきませんが、それほど困難を伴うものではありません。
さらに、今回紹介したClojarsには、Clojureユーザたちが作った様々なライブラリが集められています。
一度、覗いてみて、いろいろ試してみてはいかがでしょうか。