node.js自体を更新する(Windows環境)

0,目次

  1. はじめに
  2. 管理ツール「n」の導入(Windows版はないため失敗)
  3. node.jsのアップデート
    1. 最新のnode.jsを取得
    2. 動作確認
  4. まとめ

1,はじめに

Windows環境に導入したnode.jsをバージョンアップしたいと思ったことはありませんでしょうか?

方法として、既存のnode.jsのアンインストールを行い、最新のパッケージをインストールするという方法が考えられます。

しかし、面倒くさいです。

そこで、「n」というバージョン管理ツールを使用して、node.jsの更新を試みます。

まぁ、記事を読んでいただくとわかるのですが、

結論から言うと、「n」での更新はできませんでした。

Windowsに「n」は現状(2019/11/04)対応しておりません。

試した環境は以下の通りです。

  • Windows 10
  • npm (v6.12.1)
  • node.js (v6.10.3)

2,管理ツール「n」の導入

まず、node.jsのパッケージ管理ツール「n」を導入します。

そのために、コマンドラインを起動します。

そして、以下のコマンドを実行します。

npm install -g n

実行すると以下の通りエラーが出ました。

Microsoft Windows [Version 10.0.18362.449]
 (c) 2019 Microsoft Corporation. All rights reserved.
 C:\Users\jskny>npm install -g n
 npm ERR! code EBADPLATFORM
 npm ERR! notsup Unsupported platform for n@6.1.0: wanted {"os":"!win32","arch":"any"} (current: {"os":"win32","arch":"x64"})
 npm ERR! notsup Valid OS:    !win32
 npm ERR! notsup Valid Arch:  any
 npm ERR! notsup Actual OS:   win32
 npm ERR! notsup Actual Arch: x64
 npm ERR! A complete log of this run can be found in:
 npm ERR!     C:\Users\jskny\AppData\Roaming\npm-cache_logs\2019-11-04T08_48_00_214Z-debug.log
 C:\Users\jskny>

え?

「n」のGitHubを確認します。

すると以下のような記述がありました。

Node.js version management: no subshells, no profile setup, no convoluted API, just simple.

(Note: n is not supported natively on Windows.)

GitHub – tj/n: Node version management

Windowsには「n」は対応していません、とのことです。

まじかよ。

3,node.jsのアップデート

(1)最新のnode.jsを取得

便利なツールはMac OSかLinuxでしか使えないということがわかりました。

おとなしく、公式サイトのインストーラー経由でアップデートを行います。

 Node.js

上記の公式サイトから、更新したいバージョンのnode.jsのインストーラーを取得します。

そして、インストールを行います。

(2)動作確認

更新ができたか確認してみましょう。

Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

新しいクロスプラットフォームの PowerShell をお試しください https://aka.ms/pscore6

PS C:\Users\jskny> node --version
v6.10.3
PS C:\Users\jskny> node --version
v12.13.0
PS C:\Users\jskny>

無事に更新ができました。

4,まとめに

まさかネット上で紹介されている更新方法が使用できないとは思わなかった。

Windowsの仲間外れ感・・・

まぁNode.jsでの開発は、DebianやMacなどの方が、本当は向いているのでしょうね。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA