Camel/JBoss Fuse開発環境構築手順

# 概要

この手順は、[apache-camel](http://camel.apache.org)の開発者または[JBoss Fuse](https://www.redhat.com/ja/technologies/jboss-middleware/fuse)の開発者がローカルPCに、開発環境を構築する簡易手順です。

この手順では、スタンドアロン[JBoss Fuse](https://www.redhat.com/ja/technologies/jboss-middleware/fuse)及び開発ルール[JBoss Developer Studio](https://tools.jboss.org/downloads/devstudio/)のインストールを説明しています。

# 前提条件: 

## PCスペックについて

- メモリ:: 4GB（最低2GB）
[NOTE]
4GBとはEclipseとFuseサーバを同時に起動する場合、同時に起動しない場合は2GB
- ハードディスク:: 5GB以上
- インターネットアクセス:: 必須

## 必要なソフトウェアについて

- [x] JDK 1.8 64bitがインストール済(JREではなく、JDKが必要)
[TIP]
jdk-8u[nnn]-windows-x64.exeをインストールしてください。openjdk-develでも大丈夫です。

- [x] Windowsの環境変数PATHにて、JDKのパスだけが含まれていること
[WARNING]
もし、JREのパスも含まれているならそれを削除して、JDKのパスをPATHに追加してください。


# JBoss Fuseのインストール

## インストーラのダウンロード

JBoss Fuseはオープンソースで公開されていますので、下記のリンクからZIP形式でダウンロードしましょう。

ダウンロードURL:
http://origin-repository.jboss.org/nexus/content/groups/ea/org/jboss/fuse/jboss-fuse-karaf

 - ファイル名: jboss-fuse-karaf-6.3.0.redhat-310-02.zip
 - ファイルサイズ:: 737MB

## インストーラの解凍

***For Windows User***
Windowsのファイル解凍機能で、スペース含ま無いフォルダへ解凍してください。

***For CentOS/RHEL/Mac User***
`unzip`コマンドで解凍してください。

```shell
unzip jboss-fuse-karaf-6.3.0.redhat-310-02.zip
```

## adminユーザの有効化

***For All User***
`<fuseインストール先>¥etc¥users.properties` を開いて、"# admin=admin..."行のコメントアウトを外してください。 + 

```properties:etc¥users.properties
admin=admin,admin,manager,viewer ...
```

## JAVA_HOMEの設定

以下のように、設定ファイルの最後に"JAVA_HOME"を環境に合わせて追記してください。

***For Windows User***
- ファイル名: `<fuseインストール先>¥bin¥setenv.bat`

```properties:bin¥setenv.bat
set JAVA_HOME="C:\Program Files\Java\jdk1.8.0_nnn"
```
[TIP]
windowsの場合は、フルパスで指定してください。パスはJDKインストール先に合わせて調整してください。

***For CentOS/RHEL User***
- ファイル名: `<fuseインストール先>/bin/setenv`

```properties:bin/setenv
export JAVA_HOME=/etc/alternatives/java_sdk_1.8.0
```
[TIP]
上記のalternativesの指定方法は、CentOS/RHELでOpenJDKをインストールしたのが前提となります。これ以外の場合はフルパスを指定してください。

***For Mac User***
- ファイル名: `<fuseインストール先>/bin/setenv`

```properties:bin/setenv
export JAVA_HOME=`/usr/libexec/java_home -v 1.8`
```
[TIP]
フルパスで指定でも大丈夫です。


## JBoss Fuseの起動

下記のコマンドでFuseをコンソールモードで起動します。

***For Windows User***

```dosbatch
cd <fuseインストール先>¥bin
.¥fuse.bat
```

***For CentOS/RHEL/Mac User***

```sh
cd <fuseインストール先>/bin
./fuse.sh
```

正常に起動できたら、画面上は下記のように表示されます。

```text
************************************
Please wait while JBoss Fuse is loading...
100% [========================================================================]

      _ ____                  ______
     | |  _ \                |  ____|
     | | |_) | ___  ___ ___  | |__ _   _ ___  ___
 _   | |  _ < / _ \/ __/ __| |  __| | | / __|/ _ \
| |__| | |_) | (_) \__ \__ \ | |  | |_| \__ \  __/
 \____/|____/ \___/|___/___/ |_|   \__,_|___/\___|

  JBoss Fuse (6.3.0.redhat-187)
  http://www.redhat.com/products/jbossenterprisemiddleware/fuse/

Hit '<tab>' for a list of available commands
and '[cmd] --help' for help on a specific command.

Open a browser to http://localhost:8181 to access the management console

Create a new Fabric via 'fabric:create'
or join an existing Fabric via 'fabric:join [someUrls]'

Hit '<ctrl-d>' or 'osgi:shutdown' to shutdown JBoss Fuse.
************************************
```
[WARNING]
注意: コンソールから抜けるとFuseがシャットダウンされます。


## 管理コンソールの確認

下記URLへアクセスして、`admin`/`admin` でログインしてください。

http://localhost:8181

## Fuseの停止

上記__2.4__で表示されるコンソールにて、`exit` と入力してください。



# JBoss Developer Studio(JBDS)のインストール


## JBDSのダウンロード

自分のPCへ下記URLから開発ツールJBDSをダウンロードします。

[WARNING]
ダウンロード先フォルダ名は、スペース含ま無いものが望ましい。

https://tools.jboss.org/downloads/devstudio

- ファイル名: devstudio-11.1.0.GA-installer-standalone.jar
- ファイルサイズ:: 647 MB


## JBDSのインストール

***For Windows/Mac User***
ダウンロードしたJarファイル(`devstudio-11.1.0.GA-installer-standalone.jar`)を右クリックして、`Open With` → `Jar Launcher` を実行します。後は、ウィザードに従います。

***For CentOS/RHEL User***
ダウンロードしたJarファイル(`devstudio-11.1.0.GA-installer-standalone.jar`)のフォルダに移動して以下のコマンドを実行します。後は、ウィザードに従います。

```sh
$ java -jar devstudio-11.1.0.GA-installer-standalone.jar
```

基本的にウィザードに従い初期設定でインストールしますが、***2つ注意点*** があります。

1. インストール先のフォルダ名はスペースが含まないこと
2. 途中でJDKを選択する画面が出るが、必ずJDK(JREではない)を選択すること 


## Mavenの設定

下記手順で、各自のPCへMaven設定の `redhat-ga-repository` を追加します。

1. JBoss Developer Studioを起動して、メニュー -> Window -> Preferences

2. 左側のナビから `JBoss Tools` を展開し、`JBoss Maven Integration` をクリック

3. `Configure Maven Repositories` ボタンをクリック

4. `Add Repository` ボタンをクリックして、`Profile ID` のプルダウンメニューから `redhat-ga-repository` を選択
[TIP] 既に追加済みの場合、`OK` ボタンが表示されません。`Cancel` してください。

5. `Finish` ボタンをクリック
[TIP] 上記の操作によって、`%USER_HOME%¥.m2¥settings.xml` に `redhat-ga-repository` のプロファイルが追加されます。このプロファイルでは、fuse及びcamelなどで使われる依存ライブラリの管理するリポジトリ情報が記述されています。

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

下記手順で、Fuse開発用プラグインをインストールしてください。

1. JBoss Developer Studioを起動して、[Red Hat Central]の画面にて"Software/Update"タブをクリックします。
[TIP] もし、[Red Hat Central]が表示されていない場合は、Window → Red Hat Centralで表示できます。

2. JBoss Developer Studio Integration Stackの下、 `JBoss Fuse Development` を選択します。

3. "Install/Update"ボタンを押下して、インストールが始まります。
[TIP] インターネットからコンポーネントをダウンロードしますので、10分程度掛かります。

4. ウィザードに従って完了してください。