API Connect をWindowsにインストールする際のTips

#はじめに
API Connectの開発環境をLinuxやMacにインストールするのは簡単だが、Windowsは結構手間がかかる上、失敗することがある。そのためのTipsを簡単にまとめる。

#ながれ
インストールの流れは以下のとおり。
- 前提の確認
- 追加SWのインストール
- node.jsインストール
- API Connectインストール

#前提の確認
詳細な前提条件は、[Software Product Compatibility Report](http://www-969.ibm.com/software/reports/compatibility/clarity/index.jsp)で確認できる。
API Connectは、色々コンポーネントがあり少しややこしいが、前提SWを確認する。

「Related software」を選択し「Create a report」をクリック。
![dev07.JPG](https://qiita-image-store.s3.amazonaws.com/0/121209/6682debd-ed45-0763-48a1-fa77076405c0.jpeg)

"IBM API Connect"と入力し、検索を行う。無償利用の場合は、"IBM API Connect Essentials"を選択し、最新のバージョンを指定する。
![01.JPG](https://qiita-image-store.s3.amazonaws.com/0/121209/e2c65a0e-5c4a-2ad7-aabc-1d9b498e80d3.jpeg)

「Filters:」で「Operating System platform」で"Windows"、「Product components」で"Developer Toolkit"のみにチェックを入れて、「Submit」をクリックする。
![02.JPG](https://qiita-image-store.s3.amazonaws.com/0/121209/eb6ba4f3-c655-aceb-da17-1c68195fa337.jpeg)

結果として、前提のNode.jsのバージョンが確認できる。Node.js 4.4.x　もしくは、IBM 提供のNode.js v4.4.x。
![03.JPG](https://qiita-image-store.s3.amazonaws.com/0/121209/e54420ac-7b2b-ac69-cf85-7a0b9e48e1b2.jpeg)

前提のOSについても、[Software Product Compatibility Report](http://www-969.ibm.com/software/reports/compatibility/clarity/index.jsp)で確認できる。

#追加SWのインストール
API Connectをインストールする前に追加のSWのインストールが必要になる。追加のSWの情報は、[Knowledge Center](http://www.ibm.com/support/knowledgecenter/en/SSMNED_5.0.0/com.ibm.apic.toolkit.doc/tapim-connector-install.html#task_uvw_ckv_jv)に記載がある。これらのインストールを実施する

- .NET Framework 4.0
- Visual Studio
- Windows SDK
- Python v2.7.10

#Node.jsのインストール
前提条件で調べたNode.jsを導入し、バージョンを確認する。

```コマンドプロンプト
C:\>node -v
v4.4.7
C:\>npm -v
2.15.8
```

Windowsのpath lengthが256文字を避ける必要がある場合、npm configのルートを変更。変更したルートにPathを通す必要あり。

```
C:\>npm config set prefix "C:\\npm"
```

コンパイラーとして、pythonとC++のコンパイラーをnpm configに設定。

```
C:\>npm config set python "C:\\Python27"
C:\>npm config msvs_version 2015
```

[Knowledge Center](http://www.ibm.com/support/knowledgecenter/en/SSMNED_5.0.0/com.ibm.apic.toolkit.doc/tapim-connector-install.html#task_uvw_ckv_jv) に記載の通り、npmのバージョンを3.x系に。npm3.x系は、node_modulesをフラットに持つことができ、Windowsのpath lengthが256文字という制約に引っかかりにくくなるから。

```
C:\>npm install -g npm
C:\npm\npm -> C:\npm\node_modules\npm\bin\npm-cli.js
npm@3.10.8 C:\npm\node_modules\npm

C:\>npm -v
3.10.8
```

#API Connectインストール
最後にAPI Connectのインストールを行う。API Connectのインストール時には、大量の出力がされ、デフォルトのコマンド・プロンプト設定ではエラー出力が流れてしまうことがある。コマンド・プロンプトのプロパティから、画面バッファーのサイズを変更する。
![05.JPG](https://qiita-image-store.s3.amazonaws.com/0/121209/cf4b6174-1567-0a69-8cfd-b2bdaf359382.jpeg)![06.JPG](https://qiita-image-store.s3.amazonaws.com/0/121209/3613b121-8643-6826-59c8-1daf1d7b089d.jpeg)

```
C:\>npm install -g apiconnect

省略

C:\>apic --ext-version
apiconnect: v2.3.6 (API Connect: v5.0.4.0)
 apiconnect-cli-apis 2.3.0 (6c13193ba5b19c2ad39af78d3ee5f2381f8057d9)
 apiconnect-cli-apps 2.4.0 (a3540f9879aac38b0a97dad171c82e037ce2545c)
 apiconnect-cli-auth 2.4.0 (963e1e2ccddd29ff8acdd21c9feb2cb5e9822cab)
 apiconnect-cli-catalogs 2.2.0 (1fcb9e8c7fec5f2aa560e94d6d127e32148954c4)
 apiconnect-cli-config 2.3.1 (ad1a8b9b05dc9cb425b66c850faf25df3dae6612)
 apiconnect-cli-create 2.4.0 (255a725517978dc1bd2d4fc96969163ff47849a1)
 apiconnect-cli-devapps 1.0.0 (1824077edaff6e4c794caf7d6f5b7012a459fcd6)
 apiconnect-cli-drafts 2.4.1 (da80ce686a8930bfc0cbfe82ced3ef6b93233b28)
 apiconnect-cli-edit 2.3.0 (cb1b808997652edec04916ce389eacb4796ee39c)
 apiconnect-cli-loopback 2.3.0 (6cb04654fae3b677af1faf423c6b177ddd90b6a7)
 apiconnect-cli-orgs 2.3.0 (b7e3b08ad93ecc4052990e335e60368e5fd2580e)
 apiconnect-cli-pm 2.2.0 (e43a7047c9ab4bc06f5d90c1cc7ce2b7a74a998b)
  microgateway 1.5.3 (386fe17a7c5a301abb8681e67ffec35a68093744)
   flow-engine 1.1.0
 apiconnect-cli-policies 1.3.0 (b01a4d033850ea46343b6f97545fcfef2ca7159f)
 apiconnect-cli-products 2.4.0 (b518c07e7cf2e64f88a585903d5d09e50afaccd2)
 apiconnect-cli-validate 2.2.0 (38be0972b4536069ccaa53c58571dd1d0cff82c1)
 apiconnect-cli-version-checker 1.2.0 (8541f810263a987dc2ac2857d856eb763a4c4324)
 plugins 3.2.1

C:\>
```

#まとめ
API Connect Developer ToolkitをWindowsにインストールする際の注意すべきTipsをまとめた。

- 前提Node.jsの確認方法
- 追加SWのインストール
- path length対応による、npmのルート変更（必要に応じて）
- npmにコンパイラーの指定（必要に応じて）
- npmのバージョンアップ
- コマンド･プロンプトのバッファー・サイズ