Nvm-windows: NPMを呼び出すときに「モジュールが見つかりません」

作成日 2015年05月18日  ·  39コメント  ·  ソース: coreybutler/nvm-windows

すべてが正しくインストールされているようで、 nvm listを実行すると...

  0.12.3
* 0.10.38 (Currently using ?-bit executable)

しかし、 npmを実行しようとすると、エラーが表示されます...

module.js:340
    throw err;
          ^
Error: Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.    js'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Function.Module.runMain (module.js:497:10)
    at startup (node.js:119:16)
    at node.js:935:3

それは正しいです。インストールされているノードのどちらのバージョンでも、node_modulesディレクトリにnpmモジュールはインストールされていません。

Installer Issue

最も参考になるコメント

残念ながら、現在テストするWin2012サーバーがありません。

これを行う100%手動の方法:

  1. これを設定するバージョンのノードディストリビューションサービスからnpmの適切なバージョンを特定します。
  2. C:\Program Files\nodejs (またはシンボリックリンクを設定する場所)に移動します。
  3. node_modulesというディレクトリを作成します。 適切なnpmリリースをダウンロードします。 内容を抽出します。 この時点で、 node_modulesディレクトリ内にnpmというフォルダができているはずです。
  4. ルートディレクトリに戻ります( C:\Program Files\nodejs ... node_modulesnode.exe 、およびnode64.exeと同じレベル)。 npmファイルとnpm.cmd`ファイルを作成します。 コードはこの要点で入手できます。

全てのコメント39件

この問題の手動による回避策はありますか? インストール時に表示されるnode_modulesnpmディレクトリとコンテンツを取得できる必要があります...

(Currently using ?-bit executable)が表示されている場合は、2つの解決策があります。 まず、ソースからビルドできます(マスターブランチにはこれに対する修正があります)。 別の方法は、ノードの各バージョン(つまり、32ビットと64ビット)を個別にインストールすることです。 @FredyCの例では、 nvm install 0.10.38 32nvm install 0.10.38 64両方を実行できます。 または、ノード実行可能ファイルを見つけてコピーし、node32.exeまたはnode64.exeとして貼り付けることもできます。 はい、それは醜いハックです。

コードにcaseステートメントがないため、NVMはノード実行可能ファイルの適切なバージョンを認識していません。 前述のハックは基本的に状態をリセットするため、正しく機能します。 その後、npmは正しく機能するはずです。 そうでない場合は、実行しているWindowsのバージョンと、NVMのインストール前に何かがインストールされているかどうか(つまり、以前のバージョンのノード、io.jsなど)をお知らせください。

はい、以前のバージョンのNode(0.12.2)をインストールしていて、プロンプトが表示されたらそれを管理するようにNVMに指示しました。 新しいバージョンをインストールしても、npmモジュールのバイナリはインストールされません。 npmモジュールを今すぐ入力するにはどうすればよいですか?

ホスト:Windows 2012 R264ビット

あなたは参照しています(Currently using ?-bit executable)したり、参照しています(Currently using 64-bit executable)あなたが行うとき、 nvm list ? コードがnpmのインストールを妨げる可能性があるため、これは重要な答えです。

次のように表示されます:(現在?ビットの実行可能ファイルを使用しています)

NVM for Windowsをインストールしたディレクトリに移動し、 0.12.2フォルダ(または現在使用されているバージョン)を見つけて、 .exeつしかないことに注意してください。 node64.exeまたはnode32.exe場合は、 node.exeという名前のコピーを作成します。 2つの.exeファイルが必要です。

次に、 nvm list再度実行します。 疑問符は表示されなくなります。 その場合は、npmを試してください。 それでも機能しない場合は、バージョンをアンインストールして再インストールできます。その時点で、すべてのnpmファイルが使用可能になっているはずです。

node64.exeをnode.exeにコピーしました

それでも取得:
nvmリスト

  • 0.12.2(現在?ビット実行可能ファイルを使用)

npmモジュールもまだありません。

ああ、おそらく名前を変更する必要がありますnode64.exenode32.exe ...私はそのステップを忘れてしまいました。

動作していないようです...

d:appsnvm> nvm install 0.12.2
node.jsバージョン0.12.2(64ビット)をダウンロードしています...完了
npmバージョン2.7.4をダウンロードしています...完了
npmv2.7.4をインストールしています...

インストールが完了。 このバージョンを使用する場合は、次のように入力します

nvmは0.12.2を使用します

d:appsnvm> cd v0.12.2

d:appsnvmv0.12.2> ren node64.exe node32.exe

d:appsnvmv0.12.2> cp node32.exe node.exe

d:appsnvmv0.12.2> nvmリスト

  • 0.12.2(現在?ビット実行可能ファイルを使用)

d:appsnvmv0.12.2> dir
2015年7月16日09:06 PM


2015年7月16日09:06 PM..
2015年7月16日09:06 PM 11,104,640 node.exe
2015年7月16日09:03 PM 11,104,640 node32.exe
2015年7月16日09:03 PMnode_modules
2015年7月16日09:03 PM 340 npm
2015年7月16日09:03 PM 209 npm.cmd
4ファイル22,209,829バイト
3ディレクトリ72,946,851,840バイト空き

どのバージョンのWindowsを実行していますか?

Windows 2012 R264ビット

'nvm use 0.12.2'を実行すると、exeの名前がnode.exeとnode64.exeに変更されていることがわかります。

残念ながら、現在テストするWin2012サーバーがありません。

これを行う100%手動の方法:

  1. これを設定するバージョンのノードディストリビューションサービスからnpmの適切なバージョンを特定します。
  2. C:\Program Files\nodejs (またはシンボリックリンクを設定する場所)に移動します。
  3. node_modulesというディレクトリを作成します。 適切なnpmリリースをダウンロードします。 内容を抽出します。 この時点で、 node_modulesディレクトリ内にnpmというフォルダができているはずです。
  4. ルートディレクトリに戻ります( C:\Program Files\nodejs ... node_modulesnode.exe 、およびnode64.exeと同じレベル)。 npmファイルとnpm.cmd`ファイルを作成します。 コードはこの要点で入手できます。

これは#75が原因のようです

nvmフォルダーに移動してから、問題の原因となっているバージョンに移動してから、npm.cmdファイルをダブルクリックしてください。

私は同じ問題を抱えていました、私はそれがウィンドウズのスマートスクリーンのためだと思います。 私のために働いた修正は、nvmをアンインストールしてから再インストールし、インストールディレクトリをデフォルト(Appdata)からc:nvmに変更することでした。 すべてが完璧に機能します。 それは私にそれが許可のことだと思うように導きます...

まったく同じ症状ですが、根本的な原因は、マカフィーがインストールを妨害したことです(私のDellにプリインストールされていました)。 リアルタイムスキャンを無効にし、nvm-windowsを再インストールしました。 その後、すべてが正しく機能しました。

注:このプロジェクトのreadme(https://github.com/coreybutler/nvm-windows#antivirus)には、マカフィーの干渉に関するメモがありますが、参照されている症状は同じではありません。

OS:Win7-64ビット
nvmのインストール:C:/ nvm、バージョン-1.1.0
ノードのインストール:6.2.2


Microsoft Windows [バージョン6.1.7601]
Copyright(c)2009 MicrosoftCorporation。 全著作権所有。

C:UsersRework> node -v
v6.2.2

C:UsersRework> npm -v
module.js:442
エラーをスローします。
^

エラー:モジュール 'C:Program Filesnodejsnode_modulesnpmbinnpm-cli.js'が見つかりません
Function.Module._resolveFilename(module.js:440:15)で
Function.Module._load(module.js:388:25)で
Module.runMain(module.js:575:10)で
実行時(node.js:348:7)
起動時(node.js:140:9)
node.js:463:3で
module.js:442
エラーをスローします。
^

エラー:モジュール 'C:Program Filesnodejsnode_modulesnpmbinnpm-cli.js'が見つかりません
Function.Module._resolveFilename(module.js:440:15)で
Function.Module._load(module.js:388:25)で
Module.runMain(module.js:575:10)で
実行時(node.js:348:7)
起動時(node.js:140:9)
node.js:463:3で

これで動作するようになりました。githubサイトからノード6.2.2srcフォルダーをダウンロードし、6.2.2バージョンのノードフォルダー内のnvmフォルダーにnode_modulesフォルダーをコピーしました。
nvmがこれらすべてのファイルを自動的にコピーせず、手動でコピーする必要がある理由を理解したいと思います。

私は実際にWindows10マシンに6.2.2をインストールしたばかりです....まったく問題ありません。

@ invinciblemuffi -NVM4Wはこれを_行います_。 何かが自動的に発生しない場合、ほとんどの場合、コマンドの実行を妨げているのはOSか、その他のサードパーティソフトウェア(ウイルス対策など)です。 さらに、Windows 7はEOLに達し、技術的にサポートされていません。

npmとnodeに関連する前にシステムenvパスを削除しますが、nvmのままにします。これで問題ありません。

NVMがこの障害を検出し、適切なエラーメッセージを提供し、インストールをロールバックできれば便利です。

同じ問題が発生し、管理者としてNVMを実行することで「解決」しました。

@PlatinumEagle私も同様の状況にありました...マカフィーがプリインストールされたDellコンピュータで。 McAfeeの「リアルタイムスキャン」を無効にし、NVM for Windows(NVM4W)をアンインストールし、管理者として実行されていたコマンドプロンプトからNVM4Wを再インストールすると、問題が修正されました。 追加の問題なしでマカフィーを再度有効にすることができました。

2017年とマカフィーはまだインストールで私に悲しみを与えています! ヒントをくれたPlatinumEagleに感謝します...

これは最新バージョンでは発生しないはずなので、終了します。 引き続きこの問題が発生する場合は、ここに投稿してください。再開します。

ウイルス対策を扱っている人のために:あなたのAV定義が最新であることを確認することを忘れないでください。 NVM4Wは、マカフィーおよびその他すべての主要なAVシステムでホワイトリストに登録されています。

これを機能させるには、昇格された管理者権限が必要であることを覚えておくことも重要C:\Program Files (機密ディレクトリと見なされます)にアクセスしたりするために必要な権限です。

Macでは正常に動作していますが、Linuxサーバーではエラーが発生します...

wdio wdio.deskcustomreporter.conf.js

module.js:442
エラーをスローします。
^
エラー:モジュール '../build/lib/cli.js'が見つかりません
Function.Module._resolveFilename(module.js:440:15)で
Function.Module._load(module.js:388:25)で
Module.require(module.js:468:17)で
必要に応じて(internal / module.js:20:19)
オブジェクトで。(/srv/fronttest/fronttest/releases/4-fronttest-master-20170721000921/node_modules/.bin/wdio:5:1)
Module._compileで(module.js:541:32)
Object.Module._extensions..js(module.js:550:10)で
Module.load(module.js:458:32)で
tryModuleLoad(module.js:417:12)で
Function.Module._load(module.js:409:3)で


"devDependencies":{
"@ Housing / filter-encoder": "^ 1.0.31"、
「同時に」:「^ 3.5.0」、
"mocha": "^ 3.2.0"、
"webdriverio": "^ 4.5.2"
}、
「依存関係」:{
"child_process": "^ 1.0.2"、
"es6-promise": "^ 4.0.5"、
"エクスプレス": "^ 4.15.3"、
"octokat": "^ 0.4.18"、
"アンダースコア": "^ 1.8.3"
}、
「バージョン」:「0.0.1」
}

@ sanjaychaudhari1821-これは_Windows_用のNVMです。 私はあなたがnvmを探していると思います。

Node 6.11.3または6.12.0をインストールするときにこの問題が引き続き発生し、他のnode6バージョンをチェックしませんでした。 ノード8.9.1および9.1.0で正常に動作します。 以前は機能していましたが、現在は機能していません...

私は管理者として実行します
nvmインストール6.12.0

Downloading node.js version 6.12.0 (64-bit)...
Complete
Creating C:\Users\D068725\AppData\Roaming\nvm\temp

Downloading npm version 3.10.10... Complete
Installing npm v3.10.10...

Installation complete. If you want to use this version, type

nvm use 6.12.0

次に、nvm use6.12.0を実行します

Now using node v6.12.0 (64-bit)

次に、npm--versionを実行します

module.js:471
    throw err;
    ^

Error: Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js'
    at Function.Module._resolveFilename (module.js:469:15)
    at Function.Module._load (module.js:417:25)
    at Module.runMain (module.js:604:10)
    at run (bootstrap_node.js:383:7)
    at startup (bootstrap_node.js:149:9)
    at bootstrap_node.js:496:3
module.js:471
    throw err;
    ^

Error: Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js'
    at Function.Module._resolveFilename (module.js:469:15)
    at Function.Module._load (module.js:417:25)
    at Module.runMain (module.js:604:10)
    at run (bootstrap_node.js:383:7)
    at startup (bootstrap_node.js:149:9)
    at bootstrap_node.js:496:3

フォルダ6.12.0のnode_modulesフォルダを調べると、空です。

ところで、ダウンロードは機能しているようです。tempフォルダーで、npm-xxx.zipがダウンロードされて抽出されていることがわかります。 しかし、それはコピーされていないようです...

この問題が発生しました。

nvmアンインストールを使用してnodeJSインストールをアンインストールしました(その後、フォルダーを手動で削除する手順に従いました)

次に、admin privでNVMを実行して再インストールしました。これは、管理者として削除して再インストールすることで機能したようです。

新規インストールでこの問題が発生しています。 同じ結果で次の順列を試しましたが、node_modulesフォルダーは空です。

  1. デフォルトのディレクトリにインストールし、ターミナルをユーザーとして実行し、nvmコマンドを実行します。
  2. デフォルトのディレクトリにインストールし、rootとしてターミナルを実行し、nvmコマンドを実行します。
  3. C:\Users\q4i2\nvmC:\Users\q4i2\nodeにインストールし、ターミナルをユーザーとして実行し、nvmコマンドを実行します。
  4. C:\Users\q4i2\nvmC:\Users\q4i2\nodeにインストールし、ターミナルをrootとして実行し、nvmコマンドを実行します。

VMWare Fusion10.0.1内のWindows10ゲスト
nvm-windows 1.1.6
最新の定義を備えたMcafee5.0.6.220。 残念ながら、これは作業用マシンであるため、テストのために無効にすることはできません。

C:\Users\q4i2
λ nvm install 4.8.7
Downloading node.js version 4.8.7 (64-bit)...
Complete
Creating C:\Users\q4i2\nvm\temp

Downloading npm version 2.15.11... Complete
Installing npm v2.15.11...

Installation complete. If you want to use this version, type

nvm use 4.8.7

C:\Users\q4i2
λ nvm use 4.8.7
Now using node v4.8.7 (64-bit)

C:\Users\q4i2
λ npm -v
module.js:327
    throw err;
    ^

Error: Cannot find module 'C:\Users\q4i2\node\node_modules\npm\bin\npm-cli.js'
    at Function.Module._resolveFilename (module.js:325:15)
    at Function.Module._load (module.js:276:25)
    at Function.Module.runMain (module.js:441:10)
    at startup (node.js:140:18)
    at node.js:1043:3
module.js:327
    throw err;
    ^

Error: Cannot find module 'C:\Users\q4i2\node\node_modules\npm\bin\npm-cli.js'
    at Function.Module._resolveFilename (module.js:325:15)
    at Function.Module._load (module.js:276:25)
    at Function.Module.runMain (module.js:441:10)
    at startup (node.js:140:18)
    at node.js:1043:3

C:\Users\q4i2
λ nvm root

Current Root: C:\Users\q4i2\nvm

C:\Users\q4i2
λ dir C:\Users\q4i2\nvm\v4.8.7\node_modules\
 Volume in drive C is OSDisk
 Volume Serial Number is 5AC4-C122

 Directory of C:\Users\q4i2\nvm\v4.8.7\node_modules

01/10/2018  11:40 AM    <DIR>          .
01/10/2018  11:40 AM    <DIR>          ..
               0 File(s)              0 bytes
               2 Dir(s)  14,723,813,376 bytes free

前のダウンロードタスクのようにInstalling npm v2.15.11... Complete変更されないため、問題のある行はInstalling npm v2.15.11...ようです。

データベースのテーブルを変更しているときにこのエラーが発生します.....

C:UsersGauravNode.js> node demo_alterTable.js
module.js:540
エラーをスローします。
^

エラー:モジュール 'C:UsersGauravNode.jsdemo_alterTable.js'が見つかりません
Function.Module._resolveFilename(module.js:538:15)で
Function.Module._load(module.js:468:25)で
Function.Module.runMain(module.js:684:10)で
起動時(bootstrap_node.js:187:16)
bootstrap_node.js:608:3で

- - - - - - - - - - - - - - - - - - - - - - -ソースコード - - ---------------------
//// filename- demo_alterTable.js
var mysql = require( 'mysql');

var con = mysql.createConnection({
ホスト: "localhost"、
ユーザー:「root」、
パスワード: ""、
データベース:「nodejs」
});

con.connect(function(err){
if(err)throw err;
console.log( "接続済み!");
var sql = "ALTER TABLE Customers ADD COLUMN id INT AUTO_INCREMENT PRIMARY KEY";
con.query(sql、function(err、result){
if(err)throw err;
console.log( "テーブルが変更されました");
});
});

@GauravSinghPawarその問題はnpmとは関係がないようですので、おそらく別の問題を作成する必要があります。 このチケットは、デフォルトでインストールされるはずのnpm用ですが、インストールされていません。 ファイルC:\Users\Gaurav\Node.js\demo_alterTable.jsはデフォルトですべてのユーザーのマシンにインストールされているわけではないので、同じ問題や根本的な原因が発生しているのではないかと疑っています。 問題はファイルが存在することのようですが、何らかの理由で読み取ることができません。 npmの問題は、ファイルを手動で配置することで「パッチ」を適用できます。

新しい問題を作成するときは、ログとバージョン情報を含めるのが最適です。 最低限、 C:\Users\Gaurav\Node.js\とそのファイルの特権のディレクトリリストとともに、nvm、node.js、およびWindowsのバージョン番号が表示されることを期待します。 また、ノードを実行しているユーザーと、昇格されたアクセス許可を持っているかどうか。

Electron Globallyをインストールした後、同じ問題が発生しました。
解決策:npmフォルダーを手動で作成してから、修復アクションを実行して再インストールしました。

単純な再起動で問題が解決しました

@coreybutlerが提供した手動修正は私のために働いた

私は同じ問題に直面していると思います

私の環境

  • ウィンドウズ10

NVM4Wバージョンを使用しています:

  • 1.1.7

管理者権限がある場合とない場合の両方で、cmdと組み込みのwinコマンドラインインターフェイスを使用してみましたが、同じ結果になりました。

λ npm
internal/modules/cjs/loader.js:584
    throw err;
    ^

Error: Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:582:15)
    at Function.Module._load (internal/modules/cjs/loader.js:508:25)
    at Function.Module.runMain (internal/modules/cjs/loader.js:754:12)
    at startup (internal/bootstrap/node.js:283:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:622:3)
internal/modules/cjs/loader.js:584
    throw err;
    ^

Error: Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:582:15)
    at Function.Module._load (internal/modules/cjs/loader.js:508:25)
    at Function.Module.runMain (internal/modules/cjs/loader.js:754:12)
    at startup (internal/bootstrap/node.js:283:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:622:3)

10/4を更新

node_modulesもインストール時に空になることを確認しました。 他に何も示唆していないので、これはちょっと奇妙です。 v9.11.2をインストールするための出力:

λ nvm install 9.11.2
Downloading node.js version 9.11.2 (64-bit)...
Complete
Creating C:\Users\MyUser\AppData\Roaming\nvm\temp

Downloading npm version 5.6.0... Complete
Installing npm v5.6.0...

Installation complete. If you want to use this version, type

nvm use 9.11.2

そして、 npmを実行しようとすると、更新前と同じ出力になります。

そこで、公式インストーラーを使用して、nvmの外部にv9.11.2コピーをインストールしました。 そのインストールのnpm_modulesからnvmインストールにnpmファイルをコピーし、スタンドアロンバージョンをアンインストールしました。そして、見よ、 npmを実行しても、nvmインストールはもう文句を言いません。

私は管理者権限を使用してすべてのコマンドとインストールを実行しているので、ここでは問題にはなりませんが、私は通常のWindowsユーザーではないので、何かを見逃したり、何か間違ったことをしたりした可能性があります...

私はこれを得ていたが、私にとっては同じ問題だったHERE 。 管理者特権のコマンドプロンプトからnvminstallを実行する前に、McAfeeを無効にすることで修正しました。

私の問題は@helzgateと同じだと思いますが、企業の理由でテストできません。

このページは役に立ちましたか?
0 / 5 - 0 評価