MacにSpring MVC開発環境を作ってみた

# はじめに

- 色々な諸事情あって、Spring開発環境を作りました。
- 合間合間でしたが、順調に嵌りながら計3,4時間ほどで構築できました。
- 今後もSpring関連は色々進めてみたいとおもいます。

# 環境

|#|OS/ソフトウェア/ライブラリ|バージョン|
|:---|:---|:---|
|1|Mac OS X|EI Capitan|
|2|Java|1.8.0_111|
|3|Tomcat|8.0.43|
|4|Eclipse|4.5 Mars|
|5|Maven|3.5.2|
|6|Spring|3.1.1.RELEASE|

# Homebrewから各種インストール

## brewを更新

```
brew update && brew upgrade && brew cleanup
```

## Java

### インストール

```
brew cask install java
```

### PATHの設定

```
export JAVA_HOME=`/usr/libexec/java_home -v 1.8`
```

## Tomcat

### インストール

```
brew install tomcat
```

## Maven

### インストール

```
brew install maven
```

### PATHの設定

```
export M2_HOME=/usr/local/Cellar/maven/3.5.2/
export M2=$M2_HOME/bin
export PATH=$M2:$JAVA_HOME:$PATH
```

# Eclipseのインストール

## Marsのダウンロード

https://www.eclipse.org/downloads/packages/release/Mars/2

※ Eclipse IDE for Java EE Developersを選択してください。

## インストール

Eclipse.appを/Applications配下に置いてください。

## 各種プラグインダウンロード

**日本語化プラグイン**
http://mergedoc.osdn.jp/#pleiades.html

※ ページ下部のPleiades プラグイン・ダウンロードからダウンロードしてください。

**JStyle**
http://mergedoc.osdn.jp/#jstyle.html

## 日本語化

/Applications/Eclipse.app/Contents/Eclipse/plugins/以下に解凍したプラグインのjp.sourceforge.mergedoc.pleiadesディレクトリを配置してください。

/Applications/Eclipse.app/Contents/Eclipse/eclipse.iniを開いて書きを追記してください。

```
-Xverify:none
-javaagent:/Applications/Eclipse.app/Contents/Eclipse/plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar
```

## JStyle

/Applications/Eclipse.app/Contents/Eclipse/plugins/以下に解凍したプラグインのjarを配置してください。

# Ecelipseの初期セットアップ

起動後、画面左上部の環境設定を開きます。

- 「Java > コンパイラー」 からJavaのバージョンを1.8にする。
- 「Java > インストール済みのJRE」 からJava SE 8を追加する。
- 「一般 > JStyle」 の設定を調整する。
- 「一般 > Webブラウザ」 の設定をする。
- プロキシ設定が必要な場合、 「一般 > ネットワーク接続」の設定をする。

# Tomcatの接続設定

起動後、画面左上部の環境設定から、 「サーバー > ランタイム環境」 を開きます。

1. 追加から「Apache > Apache Tomcat v8.0」を選択し、次に進みます。
2. 名前とTomcat インストール・ディレクトリーを入力します。ディレクトリは以下となります。

```
/usr/local/Cellar/tomcat@8.0/8.0.43/libexec
```

# SpringとMavenプラグインのインストール

## STSのインストール

1. 画面上部の「ヘルプ > Eclipseマーケットプレイス」を開きます。
2. 検索窓にSTSと入力し、インストールします。

## Mavenプラグインのインストール

1. 画面上部の「ヘルプ > 新規ソフトウェアのインストール」を開きます。
2. 検索窓にSTSと入力し、インストールします。

1. 画面上の「ウィンドウ > ビューの表示」からプロジェクト・エクスプーローラーを開きます。
2. 追加ボタンから以下を設定し、インストールします。

```
Maven
http://download.eclipse.org/technology/m2e/releases
```

# Springプロジェクトの作成

1. 画面上部の「ファイル > 新規 > Spring レガシー・プロジェクト」を開きます。
2. プロジェクト名を入力し、テンプレートからSpring MVC Projectを選択し、次に進みます。
3. パッケージ名を入力し、完了します。

# プロジェクトの初期セットアップ

プロジェクトを右クリックし、プロパティを開きます。

- 「Java コンパイラー」 からJavaのバージョンを1.8にする。
- 「Java ビルド・パス」 からJava SE 8を追加する。

# 依存関係のインストール

1. プロジェクトを右クリックし、「実行 > Maven clean」を実行します。
2. 同じく、「実行 > Maven install」を実行します。

# プロジェクトの起動

1. プロジェクトを右クリックし、「実行 > サーバーで実行」を実行します。
2. 手動で新規サーバーを定義から、「Apache > Apache Tomcat v8.0」を選択し、次に進みます。
3. プロジェクトを構成済みに追加し、完了します。以下のようなページが表示されれば成功です。

![FireShot Capture 065 - Home - http___localhost_8080_app_.jpg](https://qiita-image-store.s3.amazonaws.com/0/90598/5a8a5968-4e7c-a711-b610-f9526b0f69e4.jpeg)

# 嵌った点、よくわからなかった点

- Eclipseの導入

Eclipseにも様々なバージョンやPleadesを直接使うや、本家からダウンロードまたはHomebrewからインストールなど選択肢が多数あります。

- プロジェクトの作り方

最初はMavenプロジェクトからSpring環境に昇格させていくような形で行っていましたが、
様々な設定方法があるのでよくわからなかったです。
また、途中STSといったテンプレートが作れるパッケージを見つけられたおかげでだいぶ楽になりました。

- Tomcatの正常実行

色々いじくると実行環境が壊れてしまし、どこをいじればいいのかわからなくなってしまった。
ワークスペースを消してやりなおすのが吉。

- 依存関係の解消方法

pom.xmlに追加するだけでは駄目で、Maven使ってインストールする手順が必要なのを運で知ることができた。

# よく理解していない点

- Spring、Spring MVC、Spring Bootなどの違い

この辺、調べるときにきちんと絞れていないと嵌まる恐れあり。

- MavenとGradleの違い

Gradle使ってみましたが、xmlの設定を自前でやらないといけない？
Mavenはすべて画面ポチポチでできた。