Scala + Eclipse + Maven on Windows

そういえば、単に開発環境を整えるだけでも一苦労するので、社内の開発環境構築手順としてまとめた内容を加筆修正して晒すことにします。

想定してる環境は以下のとおりです。

  • Windows XP
  • 32bit
  • 2ギガ以上のメモリ(重要)

Java入れる

JDKをダウンロードしてインストールします。

  • Oracleのサイトに行って、環境にあった最新のJDKをダウンロード。いまのとこJDK1.6.0 update 21。
  • ダウンロードした jdk-6u21-windows-i586.exe 的なやつを実行してインストール。
  • 環境変数JAVA_HOMEにJDKのインストールパスを設定。通常は C:\Program Files\Java\jdk1.6.0_21 とか。
  • 環境変数PATHの先頭に %JAVA_HOME%\bin を追加*1

ここまでできれば、コマンドプロンプトからjavaが実行できるはずです。

> java -version
java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b07)
Java HotSpot(TM) Client VM (build 17.0-b17, mixed mode, sharing)

JDK1.6.0 update 21のb06だと、Eclipse Helios(3.6)がうまく動かないので、b07が必要です。
update21のリリース直後にインストールした人はb06になっているので、一度JREJDKを両方アンインストールして、再度インストールしなおしてください。
さらについでに言うと、b07はWindows版だけだそうで、Linux版とSolaris版はb06でOKみたいです。
update22出せよわかりにくいから、という話ですが。

Maven入れる

Mavenをシェルから実行できるようにします。

ここまでできれば、コマンドプロンプトからmavenが実行できるはずです。

> mvn -version
Apache Maven 2.2.1 (r801777; 2009-08-07 04:16:01+0900)
Java version: 1.6.0_21
Java home: c:\Program Files\Java\jdk1.6.0_21\jre
Default locale: ja_JP, platform encoding: MS932
OS name: "windows xp" version: "5.1" arch: "x86" Family: "windows"

Scala入れる

Scalaをシェルから実行できるようにします。Eclipseだけでやるなら不要ですが、REPLとか使うのにあったほうがいいです。

ここまでできれば、コマンドプロンプトからscalaが実行できるはずです。

> scala -version
Scala code runner version 2.8.0.final -- Copyright 2002-2010, LAMP/EPFL

Eclipse入れる

Eclipseを実行できるようにします。日本語化とかすると動く気がしません。PleiadesとかAll-In-Oneとか入れると安定しません。余分なものを入れると、何か問題があっても原因が良くわからなくなるので、オススメしません。

会社ではGalileo SR2(3.5.2)を使ってますが、ここではHelios(3.6)で説明します。安定してるかどうかはわかんないです。

-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.0.v20100503
-product
org.eclipse.epp.package.java.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vm
C:\Program Files\Java\jdk1.6.0_21\bin\javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xss1M
-Xms40m
-Xmx756m

以下の2行を -vmargs の前に追加。

-vm
C:\Program Files\Java\jdk1.6.0_21\bin\javaw.exe

最後のメモリ関連のVM引数を追加・変更してあります。

-Xss1M  #なくてもいいですが、StackOverflowErrorとか出たら適当に増やしてください
-Xms40m
-Xmx756m  #デフォルトで384mになってますが、適当に増やしてください

Scala IDE入れる

EclipseScalaを使うためのプラグインを入れます。scala-ide.orgに何種類かupdate siteが載ってますが、ここではHelios + Scala 2.8.0.final + リファクタ機能付きのupdate siteを使います。

m2Eclipse入れる

EclipseMavenを使うためのプラグインm2Eclipseを入れます。

  • Scala IDEと同じように、以下のupdate siteからプラグインをインストール&Eclipse再起動。
  • 再起動後、メニューの"Window" -> "Preferences"から"Maven" -> "Installations"を開く。
  • "Add"ボタンを押して、先ほどMavenをインストールしたディレクトリを指定する。C:\App\apache-maven-2.2.1 とか。
  • 画面右下に"Updating indexes"とか出るので、消えるまで気長に待つ。

とりあえずこれで開発準備ができたはず。

*1:環境変数がらみはお好みのやり方で