web-dev-qa-db-ja.com

Node.jsをインストールしてnをインストールしてNode.jsをインストールしますか?

n の使用を理解するのに問題があります。基本的に、それが nvm などのNode.jsのバージョンマネージャーであることは明らかです。

しかし、基本的にシェルスクリプトであるnvmとは対照的に、ドキュメントによると、npmを使用してインストールすることをお勧めしますn

$ npm install -g n

取得できないのは、npmを手元に用意するために、Node.jsをインストールする必要があることです。 Node.jsを手動でインストールしてnpmを使用し、nを使用してNode.jsをインストールできるのはなぜですか?

言い換えると、主な目的がnpmを含むNode.jsのインストールである場合、nがnpmを使用してインストールすることを推奨するのはなぜですか?

44
Golo Roden

tl; dr

# Installs n and the latest LTS Node.js version to ~/n.
# For bash, ksh, zsh, modifies the respective user-specific Shell-initialization file to
# define env. variable N_PREFIX and append $N_PREFIX/bin to the $PATH.
curl -L https://git.io/n-install | bash  

あなたの痛みが分かります。 Node.jsをインストールしてからnをインストールしてNode.jsのインストールを管理するのは、本当に奇妙なセットアップです。

nを最初に単独でインストールできるのは本当に素晴らしいことです。

project を作成し、GitHub からのnの直接インストールをサポートしました。 n自体が必要とするものを超えるのみの前提条件は、gitです。

最初に、既存のn/Node.jsバージョンを削除する必要があることに注意してください。
ターゲットディレクトリ、~/nデフォルトでは、まだ存在していないか空である必要があります。
bashksh、およびzshの場合、関連するシェル初期化ファイル(例:~/.bashrc)は、環境変数N_PREFIXと追加$N_PREFIX/binから$PATH;他のシェルの場合、これは手動で行う必要があります。

GitHubからnを直接インストールする以外に、nn-update)およびアンインストール(n-uninstall)。

作業例;詳細については、 n-install GitHub repo を参照してください。

  • 確認を伴うインストールデフォルトの場所へのインストールを確認するプロンプト$HOME/nおよび最新のLTS Node.jsバージョンのインストール:

    curl -L https://git.io/n-install | bash
    
  • デフォルトの場所への自動インストールと、その後の最新のLTS(長期サポート)および最新のNode.jsバージョン、ならびに最新の4.1.x Node.jsバージョンのインストール:

    curl -L https://git.io/n-install | bash -s -- -y lts latest 4.1
    
  • デフォルトの場所への自動インストールwithout Node.jsバージョンのその後のインストール:

    curl -L https://git.io/n-install | bash -s -- -y -
    
  • カスタムの場所への自動インストール~/util/n、最新のLTS Node.jsバージョンの後続のインストール:

    curl -L https://git.io/n-install | N_PREFIX=~/util/n bash -s -- -y
    
38
mklement0

必要に応じて、ソースからnをインストールできます。

cd /tmp
git clone --depth=1 https://github.com/tj/n
cd n
Sudo make install

その後、次のようにノードの最新の安定バージョンをインストールできます。

n stable
21
user456584

nモジュールはconvenienceのために作成されました。

たとえば、Node.jsのバージョンをv0.8.0からv0.10.20に更新する場合、パッケージをダウンロードし、抽出してコンパイルしますか?それとも、Nodeの以前のバージョンを保持したまま、簡単に切り替えられるようにn 0.10.20と入力してすぐにインストールしますか?

nは、npmを使用してインストールすることを提案します。これは、nがモジュールであるためです。つまり、npmが最も簡単なインストール方法です。 Nodeモジュールには、グローバルにインストールされたときにシェルで実行できる機能があるため、Nodeバージョンの切り替えをはるかに簡単にするためにその機能が利用されました。

12
hexacyanide

Node.JSとは別にnpmをインストールすることもできます。例:Node.JSのないシステム上:

git clone https://github.com/npm/npm
cd npm
./configure
make

参照: NPM GitHubプロジェクト

1
A T

私も同じ質問をしましたが、光を見ました。 「n」は便利なツールであり、ノードのさまざまなバージョンを簡単にテストできます。 Linuxでも問題なく動作しますが、OS Xにどのようにインストールしようとしても(git clone、npm install、またはser456584の推奨方法を使用)、実行すると常に同じになります「Error:no installed version」の結果、インストールされているにもかかわらず

/ usr/local/lib/node_modules/n

そして

/ usr/local/bin/n

Linuxでこのツールがとても便利だとわかったので、イライラします。

0
Crooner

このように$ PATH変数にデフォルトのノードビンを含めた場合

export PATH=/usr/local/Cellar/node/11.5.0/bin:$PATH

その後、nは他のノードバージョンをアクティブにできなくなります。このエクスポートをパスから削除すると、現在アクティブなノードバージョンをnで管理できます。

0
r.bhardwaj