68

私はすでに Node.js v0.8.0 を Windows で実行しています。最新のインストーラーを実行して v0.8.4 にアップグレードできますか? 私のマシンの既存のサードパーティ製モジュールが破損するのではないかと心配しています。

4

9 に答える 9

49

はい、最新バージョンをインストールするだけです。通常、同じメジャーバージョン(バージョン0.8.xなど)をすでに使用している場合は、互換性の問題は発生しません。変更が心配な場合は、バージョンごとに変更ログをいつでも確認できます(変更ログへのリンクは、nodejs.orgのnode.jsダウンロードページにあります)。これにより、大きな変更(APIの変更など)がわかります。

于 2012-07-28T10:25:21.913 に答える
39

記録のために、私はプロセスを実行したばかりで、別のメジャー バージョンにアップグレードしても問題はありません。

.msi パッケージを使用して 0.8 から 0.10 に移動し、システムにインストールされているパッケージを上書きしました。パッケージの問題はすべて で修正されましたnpm update -g。魅力のように働きました。

それが魅力のように機能しない場合:

npm cache clean通常は問題を修正します。キャッシュが空になったら、npm update -gもう一度実行してください。

本当に問題が発生した場合:

グローバルにインストールしたモジュールを削除してから、再インストールします。方法は次のとおりです。

  • あなたが持っているものを調べてください: npm list -g --depth=0すべての最上位パッケージをバージョン番号とともに一覧表示します。 npm list -g --parseable --depth=0 > npm-global-modules.txtそれらを cwd のファイルに書き込みます。

    自分でインストールしていない奇妙なものは、おそらく別のモジュールによってインストールされている可能性があります (まれですが、私はそれが起こるのを見てきました)。これらのモジュールをリストから削除します。モジュール「npm」も削除します。

  • \n?[^\n]+[\\/]エディターで、 (regex) を 1 つのスペースに置き換えて、コマンド ラインの出力をフォーマットします。

    (私はこれをパイプで動作させることができなかったfindstrので、エディターへのラウンドトリップです。もちろん、手動で行うこともできます;)

  • すべてのモジュールを削除します。Windows では、ディレクトリを削除 (または名前変更) し%appdata%\npmます。他の OS については、すべての npm モジュールをグローバルに削除するコマンドを参照してください。

  • でモジュールを再インストールしますnpm install -g [your module list here]。やる前に忘れずnpm cache cleanに。

于 2013-07-24T10:26:10.563 に答える
2

I don't have experience with node on Windows, but I have just upgraded node & modules on my Mac, so this is just a general answer:

If you install v0.8, you might break your existing node modules, if they use deprecated functions, etc. The problem is that npm only checks your version of node while modules are being installed, not at run-time.

To be on the safe side, you need to find the global node_modules folder on your machine, back it up to somewhere, then delete and reinstall the modules. You will need to do the same thing for the node_modules folders in the apps you are using. (Assuming you have package.json files, reinstalling these should be easy.)

In practice, I don't think any of the modules I was using were actually incompatible. Good luck.

于 2012-07-28T10:30:36.637 に答える
1

nodejsサイトにアクセスしてダウンロードするだけです。ためらうことなく直接インストールできます。以前のバージョンに依存している場合は、変更ログを確認してください。

于 2016-09-21T13:26:31.903 に答える
1

0.8.0 に存在し、0.8.4 で修正された実際のバグに依存するモジュールを使用していない限り、問題ありません。これら 2 つのバージョン間で API の変更はありませんでした (そして、ノード チームはあまりにも賢く、マイナー リリースでそのような変更を導入することはできませんでした)。

于 2012-07-29T10:28:29.167 に答える
0

ノードを Windows にインストールする最善の方法は、nvm-windowsを使用することです。そのため、必要に応じてバージョンをすばやく切り替えることができます。これは、linux および max にノードをインストールする最良の方法、つまりnvmを使用する方法に似ています。

しかし、Benjen は正しいです (スカウトの経験が豊富な彼はそうではありませんでした)。別のバージョンのノードをインストールするだけでバージョンが更新されます。npm の依存関係を再インストールする必要がある場合があり、npm によって管理されていない拡張機能を再コンパイルする必要がある場合がありますが、これはノードのバージョンをどのように変更しても当てはまります。

于 2016-10-05T23:15:31.087 に答える