「Node.js」の版間の差分
Kusanaginoturugi (トーク | 投稿記録) (→Allow user-wide installations: リンクを修正) |
(→インストール: LTSリリース名の修正) |
||
(他の1人の利用者による、間の7版が非表示) | |||
7行目: | 7行目: | ||
{{Pkg|nodejs}} パッケージを[[インストール]]します。LTS 版もあります: |
{{Pkg|nodejs}} パッケージを[[インストール]]します。LTS 版もあります: |
||
− | * {{Pkg|nodejs-lts- |
+ | * {{Pkg|nodejs-lts-iron}} - 20.X バージョンの場合 |
− | * {{Pkg|nodejs-lts- |
+ | * {{Pkg|nodejs-lts-hydrogen}} - 18.X バージョンの場合 |
=== 別のインストール方法 === |
=== 別のインストール方法 === |
||
52行目: | 52行目: | ||
デフォルトでは、上記のコマンドでパッケージは {{ic|/usr/lib/node_modules/npm}} にインストールされるため、実行するのに管理者権限が必要になります。 |
デフォルトでは、上記のコマンドでパッケージは {{ic|/usr/lib/node_modules/npm}} にインストールされるため、実行するのに管理者権限が必要になります。 |
||
+ | ===== ユーザーに ''global'' パッケージのインストールを許可する ===== |
||
− | ユーザー個別にインストールする場合、別のローカルフォルダを使うように {{ic|npm}} を設定することができます。様々な方法で設定できます: |
||
+ | 現在の[[ユーザー]]に、''global'' パッケージのインストールを許可するには、[[環境変数#ユーザー毎|環境変数]] {{ic|npm_config_prefix}} を設定します。これは npm と [https://yarnpkg.com/en/ yarn] の両方で使用されます。 |
||
− | * 手動で {{ic|--prefix}} コマンドラインフラグを使う (例: {{ic|npm -g install packageName --prefix ~/.node_modules}})。 |
||
− | * {{ic|npm_config_prefix}} 環境変数を使う。 |
||
− | * ユーザーの設定ファイル {{ic|~/.npmrc}} を使う。 |
||
− | |||
− | 1番目の方法は推奨されていません。インストールした場所を覚えておく必要があり、操作を行う度にパラメータを指定しなくてはならないためです。 |
||
− | |||
− | 2番目の方法を使う場合、シェルの設定ファイル (例: {{ic|.bash_profile}}) に以下の行を追加してください: |
||
− | |||
− | PATH="$HOME/.node_modules/bin:$PATH" |
||
− | export npm_config_prefix=~/.node_modules |
||
− | |||
− | 変更を適用するために、一度ログアウトしてからログインしなおすか、シェルを再起動してください。 |
||
− | |||
− | 3番目の方法では以下のコマンドを使います: |
||
− | |||
− | $ npm config edit |
||
− | |||
− | {{ic|prefix}} オプションを探して、適当な場所に設定してください: |
||
− | |||
− | prefix=~/.node_modules |
||
− | |||
− | 行頭の {{ic|;}} は忘れずに削除してください。そのままではコメントとして認識されてしまいます。上記の設定をしたら、シェルの設定ファイル (例: {{ic|.bash_profile}}) に実行ファイルの場所を追加します: |
||
− | |||
− | export PATH="$HOME/.node_modules/bin:$PATH" |
||
− | |||
− | 変更を適用するために、一度ログアウトしてからログインしなおすか、シェルを再起動してください。 |
||
− | |||
− | ===== Allow user-wide installations ===== |
||
− | |||
− | To allow ''global'' package installations for the current [[ユーザー]], set the {{ic|npm_config_prefix}} [[環境変数#ユーザー毎|環境変数]] This is used by both npm and [https://yarnpkg.com/en/ yarn]. |
||
{{hc|~/.profile|2= |
{{hc|~/.profile|2= |
||
90行目: | 61行目: | ||
}} |
}} |
||
+ | 再ログインまたは、''source'' して変更を更新します。 |
||
− | Re-login or ''source'' to update changes. |
||
+ | {{ic|npm install}} 時に、{{ic|--prefix}} パラメータを指定することもできます。'''ただし'''、グローバルパッケージをインストールするたびに追加する必要があるので、これはお勧め'''しません'''。 |
||
− | You can also specify the {{ic|--prefix}} parameter for {{ic|npm install}}. However, this is '''not''' recommended, since you will need to add it every time you install a global package. |
||
$ npm -g install packageName --prefix ~/.local |
$ npm -g install packageName --prefix ~/.local |
||
+ | 同様の方法として、{{ic|$HOME/.npmrc}} の {{ic|prefix}} フィールドを編集して、恒久的に変更する方法もあります。 |
||
− | Another method to do the same is to edit {{ic|prefix}} field in {{ic|$HOME/.npmrc}} file to change the install location permanently. |
||
− | {{Note| |
+ | {{Note|最後の方法は、''npm'' のみに特有のものです。}} |
==== パッケージのアップデート ==== |
==== パッケージのアップデート ==== |
||
110行目: | 81行目: | ||
# npm update -g packageName |
# npm update -g packageName |
||
− | {{Note|グローバルに |
+ | {{Note|グローバルにインストールされたパッケージは、{{ic|prefix}} がユーザーが書き込み可能なディレクトリに設定されていない限り管理者権限が必要なので注意してください。}} |
===== 全てのパッケージをアップデート ===== |
===== 全てのパッケージをアップデート ===== |
||
179行目: | 150行目: | ||
* IRC チャンネル #node.js on irc.freenode.net |
* IRC チャンネル #node.js on irc.freenode.net |
||
− | {{TranslationStatus|Node.js|2021- |
+ | {{TranslationStatus|Node.js|2021-09-25|689079}} |
2024年9月12日 (木) 22:02時点における最新版
Node.js は便利なライブラリが組み合わされた JavaScript 実行環境です。Google の V8 エンジン を使用してブラウザの外でコードを実行します。イベント駆動型のノンブロッキング I/O モデルを採用しているため、リアルタイムなウェブアプリケーションに適しています。
目次
インストール
nodejs パッケージをインストールします。LTS 版もあります:
- nodejs-lts-iron - 20.X バージョンの場合
- nodejs-lts-hydrogen - 18.X バージョンの場合
別のインストール方法
様々なバージョンの nodejs を動作させる必要があったり、または動作させることを望むことは珍しいことではありません。node ユーザーの間で推奨されている方法は NVM (Node Version Manger) の使用です。nvmAUR を使うことで簡単にインストールすることができます。
これをシェルの起動ファイルに追加することで設定できます:
# Set up Node Version Manager source /usr/share/nvm/init-nvm.sh
使用方法はプロジェクトの github にまとめられていますが、要するに次を実行するだけです:
$ nvm install 8.0 Downloading and installing node v8.0.0... [..] $ nvm use 8.0 Now using node v8.0.0 (npm v5.0.0)
nvmAUR を使う場合、以前は AUR の nodejs-fake
パッケージを使うことが推奨されていましたが、これは現在、削除されています。推奨される方法は、マニュアル pacman(8) § TRANSACTION OPTIONS (APPLY TO -S, -R AND -U) にあるように、--assume-installed nodejs=<version>
を使うことです。
ディレクトリに、.nvmrc ファイルがあるたびに、`nvm use` を自動的に実行したい場合は、~/.bashrc
に以下を追加してください。
Node Packaged Module
npm は node.js の公式パッケージマネージャです。npm パッケージでインストールできます。
npm でパッケージを管理
パッケージのインストール
全てのパッケージは次のコマンドでインストールできます:
$ npm install packageName
上のコマンドでパッケージがカレントディレクトリの node_modules
に、実行ファイルが node_modules/.bin
にインストールされます。
システム全体にインストールするには -g
スイッチを使います:
# npm -g install packageName
デフォルトでは、上記のコマンドでパッケージは /usr/lib/node_modules/npm
にインストールされるため、実行するのに管理者権限が必要になります。
ユーザーに global パッケージのインストールを許可する
現在のユーザーに、global パッケージのインストールを許可するには、環境変数 npm_config_prefix
を設定します。これは npm と yarn の両方で使用されます。
~/.profile
PATH="$HOME/.local/bin:$PATH" export npm_config_prefix="$HOME/.local"
再ログインまたは、source して変更を更新します。
npm install
時に、--prefix
パラメータを指定することもできます。ただし、グローバルパッケージをインストールするたびに追加する必要があるので、これはお勧めしません。
$ npm -g install packageName --prefix ~/.local
同様の方法として、$HOME/.npmrc
の prefix
フィールドを編集して、恒久的に変更する方法もあります。
パッケージのアップデート
パッケージをアップデートするには次を実行:
$ npm update packageName
グローバルにインストールしたパッケージ (-g
) の場合:
# npm update -g packageName
全てのパッケージをアップデート
場合によっては、全てのパッケージをアップデートしたいと思うかもしれません。ローカルでもグローバルでも可能です。packageName を抜いて npm
を実行すると全てのパッケージがアップデートされます:
$ npm update
またはグローバルにインストールしたパッケージをアップデートするには -g
フラグを追加:
# npm update -g
パッケージの削除
-g
スイッチを使ってインストールしたパッケージを削除するには次のコマンドを使用:
# npm -g uninstall packageName
ローカルパッケージを削除するときはスイッチを省いて実行:
$ npm uninstall packageName
パッケージの一覧表示
グローバルにインストールしたパッケージのツリービューを表示するには次を使用:
$ npm -g list
場合によってツリーは深くなりすぎることがあります。トップレベルのパッケージだけを表示するには:
$ npm list --depth=0
アップデートが必要な古いパッケージだけを表示するには:
$ npm outdated
pacman でパッケージを管理
Arch User Repository には nodejs-packageName
という名前で node.js のパッケージがいくつか存在します。
トラブルシューティング
node-gyp エラー
次のようなエラーの場合 gyp WARN EACCES user "root" does not have permission to access the ... dir
は --unsafe-perm
オプションが役立つ場合があります。
# npm install --unsafe-perm -g node-inspector
エラー Cannot find module ...
npm 5.x.x 以降、package-lock.json ファイルは package.json とともに生成されます。2つのファイルが異なるパッケージバージョンを参照している場合、競合が発生する可能性があります。この問題を解決する一時的な方法は次の通りです:
$ rm package-lock.json $ npm install
ただし、npm 5.1.0 以降で修正されています。詳細については、以下を参照してください:
参考資料
nodejs や公式のパッケージマネージャである npm の詳細情報は以下の資料を参照してください:
- Node.js ドキュメント
- NPM ドキュメント
- IRC チャンネル #node.js on irc.freenode.net