web-dev-qa-db-ja.com

「gulp」は内部コマンドまたは外部コマンドとして認識されません

Gulp および Node.Js を使用して、本番用にCSS/JSファイルを縮小および連結するプロセスをストリーム配信しようとしています。

これが私がやったことです。

  1. Windows 7マシンに Node.Js をインストールしました。
  2. このコマンドを使用してGulpをグローバルにインストールnpm install -g gulp
  3. 次に、NODE_PATHという新しいユーザー変数を追加して、%AppData%\npm\node_modulesに設定しました

コマンドラインを閉じて再度開いた後、コマンドライン(gulp css)からgulpタスクを実行しようとしました。しかし、それは私に次のエラーを与えます

'gulp' is not recognized as an internal or external command

これを機能させるにはどうすればよいですか?

Windowsの検索バーを使用して次のパスを開いたとき、%AppData%\npm\node_modules次の2つのフォルダーが表示されます

gulp
gulp-cli

enter image description here

システム変数のPath変数に%AppData%\npm\node_modulesを追加しようとしましたが、その変数が最大許容文字数制限に達したため、それを取得しませんでした。

Path変数からいくつかのパスを削除し、;C:\Users\[MyWindowsUserName]\AppData\Roaming\npm\node_modulesを追加しました

それでも動作しません。

このコマンドを使用して実行時にパスを設定しようとしました

PATH=%PATH%;C:\Users\[MyWindowsUserName]\AppData\Roaming\npm\node_modulesを実行し、gulpを実行しても、同じ問題が発生します。

ここに何が欠けていますか?これを機能させるには、他に何が必要ですか?

31
Junior

NodeJとgulpをアンインストールしてから、両方を再インストールすることで問題を解決しました。

Gulpをグローバルにインストールするには、次のコマンドを実行しました

npm install -g gulp
13
Junior

最初にローカルにインストールしたときに同様の問題が発生しました(-gなし)。 -g(グローバル)で再インストールしたところ、動作しました。

npm install -g gulp

gulpfile.jsが利用可能なフォルダーからgulpを実行する必要があります。

70
tomcat

My Computer>Properties>Advance System Settings>Environment Variables>に移動します

管理者の変数の下で、PATH変数を編集し、その値を"C:\Users\Username\AppData\Roaming\npm"に変更します。注:パス内のユーザー名は、ログインに使用した現在の管理ユーザーの名前になります。

11
Vinod R

Windows 7でも同じ問題が発生しました。パスシステム変数を手動で編集する必要があります。

START->システム環境変数の編集->環境変数->システム部分で変数「パス」を検索->編集->「;」の後に新しいパスを追加ファイルgulp.cmdディレクトリに '; C:\ Users\YOURUSERNAME\AppData\Roaming\npm'のようなもの-> [OK]をクリックしてこれらのウィンドウを閉じます-> CLIを再起動します->お楽しみください

2
Matiiii

私の場合、以前にプロジェクトフォルダで別のシステムユーザーとnpm installを実行したため、この問題が発生しました。 Gulpはすでにグローバルにインストールされています。プロジェクトでフォルダー/ node_modules /を削除し、現在のユーザーでnpm installを実行すると、機能しました。

0
Markus Bauer

それはタイプミスでした。 node_modulesをユーザーのグローバルパス変数の末尾に追加するか、そのフォルダーに関連付けられているアクセス許可(node _modules)を確認することができます。エラーは最後のケースのようには見えませんが、あなたと同様の問題に遭遇しました。ほとんどの場合、最初のソリューションで十分です。環境変数に移動し、node_modulesへのパスをユーザーのパス変数の最後の部分に追加します。私はシステムではなくユーザーと言っていることに注意してください。

変数宣言の最後にセミコロンを追加し、静的パスをnode_moduleフォルダーに追加するだけです。 (例c:\ path\to\node_module)

または、次のことができます。

あなたのCMD

PATH=%PATH%;C:\\path\to\node_module

編集

最後の解決策は、CMDを閉じない限り機能します。したがって、永続的な変更には最初のソリューションを使用してください。

0
Henry Ollarves

コマンド(install npm -g gulp)を実行するときに、C:\ディレクトリにインストールgulpが作成されることを確認する必要があります。

そのディレクトリは、Javaパスに設定されているnpmパス変数と一致する必要があります。

コマンドプロンプトからパスを実行し、これを確認します。そうでない場合は、gulpがインストールされている場所でJavaクラスパス変数を変更します。

動作するはずです。

0
Amit Sharma