18

AngularJS チュートリアルで最新の Web アプリを構築する方法を学び始めて、非常に早い段階で問題に直面しています。

ノードがインストールされています:

/path/ang-news node -v
v0.10.26

以前は NPM を使用していましたが、Yeoman で問題が発生していました。しばらく前にこれらの手順を繰り返しましたが、Grunt が機能しなくなったため、最初からやり直しました。

私は走った:

$ sudo npm install -g generator-angular

そして、私が受け取るまで、すべての依存関係がインストールされていました:

npm WARN package.json mongo@0.1.0 No repository field.
npm ERR! peerinvalid The package generator-karma does not satisfy its siblings' peerDependencies requirements!
npm ERR! peerinvalid Peer generator-angular@0.9.1 wants generator-karma@>=0.8.2

次に、更新を試みました:

$ npm update -g

これを管理者として実行する必要がありました。大量のエラー メッセージを受け取りましたが、これが最も適切なようです。

npm ERR! Please try running this command again as root/Administrator.

npm ERR! System Darwin 13.1.0
npm ERR! command "/usr/local/bin/node" "/usr/local/bin/npm" "update" "-g"
npm ERR! cwd /path/ang-news
npm ERR! node -v v0.10.26
npm ERR! npm -v 1.4.3

npm ERR! not ok code 0

次に、generator-karma をアンインストールして、新たに開始してみました。

$ sudo npm uninstall -g generator-karma

しかし受け取った:

sudo: npm: command not found

$ npm -v
-bash: /usr/local/bin/npm: No such file or directory

私の最初の質問は、なぜ NPM が突然消えたのですか?

[編集: コマンドを発行するときに通常のユーザーと sudo を切り替えるときに発生する大混乱を指摘してくれた @try-catch-finally に敬意を表します。ユーザー環境を台無しにして、NPM がインストールされなくなったことがわかりました。]

私の理解では、Node をインストールすると NPM がインストールされるので、2 番目の質問は次のとおりです。NPM だけを再インストールするにはどうすればよいですか? ノードを最初から再インストールする必要はありません。

[編集: @hawk と @try-catch-finally に敬意を表します - NPM を単独でインストールすることはオプションではないようですが、両方を再インストールする簡単な方法があります。]

4

3 に答える 3

4

これをbrewで行ったことがある場合に備えて、githubのこの記事をお勧めします。時間を大幅に節約できます。

https://gist.github.com/DanHerbert/9520689

自作ユーザー向けの Mac OS X での npm の修正 次のコマンドを実行して、既存のすべてのグローバル npm モジュールを削除し、ノードと npm をアンインストールし、適切なデフォルトでノードを再インストールし、npm を独自のパッケージとしてインストールし、グローバル npm モジュールの場所を構成します。インストールする必要があります。

rm -rf /usr/local/lib/node_modules
brew uninstall node
brew install node --without-npm
echo prefix=~/.node >> ~/.npmrc
curl -L https://www.npmjs.com/install.sh | sh

この時点で、ノードと npm が正しくインストールされているはずです。最後のステップは ~/.node/bin を PATH に追加して、グローバルにインストールしたコマンドが使用できるようにすることです。~/.bash_profile 経由で実行される ~/.path スクリプトにこの行を追加しました。次の行をそのまま実行します。

export PATH="$HOME/.node/bin:$PATH"
于 2015-12-09T16:03:24.130 に答える