0

プロジェクトの 1 つで session-mongoose(0.0.2) モジュールを使用しました。これは、ノード バージョン v0.6.7 の上で実行されています。session-mongoose モジュールは、ルート package.json に対してコマンド 'npm update' を使用して、ノード バージョン (v0.6.19) と互換性のあるモジュール mongoose をプルしようとします。

session-mongoose とその依存関係が「npm update」コマンドで npm レジストリから動的にプルされるため、これらを制御できません。

今の問題は、システムが新しい展開で本番環境で動作しなくなることです。ノードのバージョンを更新せずにこれを解決する方法はありますか?

そして、エラーログは、

npm ERR! error rolling back mongoose@3.5.5 Error: UNKNOWN, unknown error 'C:\Pro
gram Files\nodejs\node_builds\server\node_modules\session-mong
oose\node_modules\mongeese\node_modules\mongoose'

npm ERR! Unsupported
npm ERR! Not compatible with your version of node/npm: mongodb@1.2.11
npm ERR! Required: {"node":">=0.6.19"}
npm ERR! Actual:   {"npm":"1.1.13","node":"0.6.7"}
npm ERR!
npm ERR! System Windows_NT 5.1.2600
npm ERR! command "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nod
ejs\\node_modules\\npm\\bin\\npm-cli.js" "update"
npm ERR! cwd C:\Program Files\nodejs\node_builds\server
npm ERR! node -v v0.6.7
npm ERR! npm -v 1.1.13
npm ERR! code ENOTSUP
npm ERR! message Unsupported
npm ERR! errno {}
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     C:\Program Files\nodejs\node_builds\server\npm-de
bug.log
npm not ok
4

1 に答える 1

1

node.js を更新する必要があります。そうしないと、最近リリースされたパッケージを使用できなくなります。バージョン 0.6.19 は 2012 年 6 月にリリースされました。それ以来、多くの変更が加えられました。最近の安定版は 0.8.19 です。

依存関係を扱うときは、npm-shrinkwrap を使用して依存関係をロックする必要があります。 http://blog.nodejs.org/2012/02/27/managing-node-js-dependencies-with-shrinkwrap/

または、展開を計画したら、プロジェクトを凍結できます (更新を行わないでください)。

于 2013-02-08T12:19:19.097 に答える