LinuxMint 17におけるScalaのインストール

[JDK Download]:http://www.oracle.com/technetwork/java/javase/downloads/index.html
[Scala HP]:http://www.scala-lang.org/
[Scala Download]:http://www.scala-lang.org/download/
[Scala IDE Download]:http://scala-ide.org/download/sdk.html
[Eclipse 日本語化]:http://qiita.com/baster/items/034e5a2a4a32feda5a5f

LinuxMint 17でのScala開発環境の構築手順の覚え書きです。
Scalaが出始めのときと比べて導入コストがすごく下がった印象。
特にTypesafe Activatorとか簡単すぎです。
どの言語も環境構築の容易性ってのが重要なんですね。では、早速。

# JDKのインストール
Scalaには後述するように複数のインストール方法が存在しますが、いずれの方法でもまずは __JDK__ (Java Development Kit)のインストールが必要です。
JDKは以下の手順でインストールします。

### 既存JDKのアンイストール
LinuxMint 17 にデフォルトインストールされているJDKをアンイストールします。

```bash:
$ sudo apt-get purge openjdk-*
```

### ダウンロード
まずは、JDKを[Oracleのサイト][JDK Download]から任意のディレクトリにダウンロードしてきます。
JDKにはバージョンが複数ありますので、自分に必要なバージョンのものをダウンロードして下さい。
通常の開発であれば現在（2014年12月）であればJava 7系をダウンロードすれば問題ないでしょう。
Java 8系についてはフレームワークや開発環境によっては適用出来ない可能性もあるため注意が必要です。

### ディレクトリへ展開
ダウンロードしてきたtar.gzを任意のディレクトリへ展開します。
（私の場合は、`/home/User/opt/jdk` にJDKのバージョン毎に展開します。）

```bash:
$ mdkir -p /home/User/opt/jdk
$ tar zxvf jdk-8u25-linux-x64.tar.gz
$ mv jdk1.8.0_25/ /home/User/opt/jdk
```

### java、javac、javawsの設定
最後にJDKに含まれるコマンドをパス指定なしで使用可能にするため設定を行います。
一般的なのは `~/.profile` に __PATH__ を通す方法ですが、今回は `update-alternatives` コマンドを使用し、設定する方法をご紹介します。
JDKを複数バージョン使用したい場合は、以下のコマンドを使用したいバージョン毎に実行して下さい。

```bash:
$ sudo update-alternatives --install /usr/bin/java java /home/User/opt/jdk/jdk1.8.0_25/bin/java 10
$ sudo update-alternatives --install /usr/bin/javac javac /home/User/opt/jdk/jdk1.8.0_25/bin/javac 10
$ sudo update-alternatives --install /usr/bin/javaws javaws /home/User/opt/jdk/jdk1.8.0_25/bin/javaws 10
```

### 使用するjava、javac、javawsの選択
複数バージョンのJDKを上記コマンドで設定した場合は、以下のコマンドによって使用するバージョンを選択します。
コマンドを実行すると、選択可能なバージョンが表示されます。使用したい選択肢の番号を入力しEnterを押下しましょう。
また、java、javac、javawsの使用するバージョンは同一になるように選択しましょう。

```bash:
$ sudo update-alternatives --config java
$ sudo update-alternatives --config javac
$ sudo update-alternatives --config javaws
```

# Scalaのインストール
[公式サイト][Scala HP]にはScalaのインストールの方法として以下の3つが紹介されています。
いずれかの方法でインストールしておけば、Scalaでの開発が可能です。

1. バイナリのインストール
1. Typesafe Activatorのインストール
1. Scala IDEのインストール

## バイナリのインストール
バイナリのインストールはScalaの開発環境構築する場合、最もスタンダードな方法だと思います。

### ダウンロード
[ここ][Scala Download]からバイナリをダウンロードします。

### 展開

```bash:
$ mkdir -p /home/User/opt/scala
$ tar zxvf scala-2.11.4.tgz
$ mv scala-2.11.4/ /home/User/opt/scala
```

### PATHの設定
以下の2行を`~/.profile`に追加します。

```bash:~/.profile
export SCALA_HOME=/home/User/opt/scala/scala-2.11.4
export PATH=$PATH:$SCALA_HOME/bin
```

すぐに反映させたい場合には`$ source ~/.profile`を実行します。

## Typesafe Activatorのインストール
Typesafe Activatorを利用する場合には、ほとんど何もすることがありません。
Typesafe Activator本体をインストールしてしまえばScala、Akka、PlayframeworkのインストールはTypesafe Activatorが自動でしてくれます。（Typesafe Activatorの使い方についてはまたの機会に）

### ダウンロード
[ここ][Scala Download]からTypesafe Activatorをダウンロードします。

### 展開

```bash:
$ mkdir -p /home/User/opt/typesafe-activator
$ unzip typesafe-activator-1.2.12.zip
$ mv activator-1.2.12 /home/User/opt/typesafe-activator
```

### PATHの設定
Typesafe Activatorのコマンドを簡単に使うために以下の2行を`~/.profile`に追加します。

```bash:~/.profile
export ACTIVATOR_HOME=/home/User/opt/typesafe-activator/activator-1.2.12
export PATH=$PATH:$ACTIVATOR_HOME
```

`$ activator ui`を実行して、ブラウザに`127.0.0.1:8888/home`が表示されれば、正しくインストールできています。

## Scala IDEのインストール
Scala IDEは既存のEclipseに追加するpluginを指す場合と、Scalaの開発環境のための複数のpluginが同梱されたeclipseベースのIDEを指す場合があります。
本記事では、後者の意味合いでScala IDEを使用します。

### ダウンロード
[ここ][Scala IDE Download]からScala IDEをダウンロードします。

### 展開

```bash:
$ mkdir -p /home/User/opt/scala-ide
$ tar zxvf scala-SDK-4.0.0-vfinal-2.11-linux.gtk.x86_64.tar.gz
$ mv eclipse/ /home/User/opt/scala-ide
```

### 日本語化
基にしているのがEclipseなので基本的にはPleiadesのドキュメント通りで大丈夫なはずです。
私が個人的にハマった事については[ここ][Eclipse 日本語化]を見てもらえばと。

以上、LinuxMint 17におけるScalaのインストールでした。
PATHを記述するファイルの場所や`update-alternatives`コマンドの有無などの差異はあるかもしれませんが、Linux系であれば基本的な設定内容は同様だと思います。
ご参考になれば。