1. ホーム
  2. node.js

[解決済み] Laravel 5.4 'crossenv'が内部または外部コマンドとして認識されません。

2022-02-09 12:37:23

質問

を実行しようとしています。 npm run dev for Laravel Mixで、このエラーが発生しました。

> @ dev D:\projects\ptcs
> cross-env NODE_ENV=development webpack --progress --hide-modules --
config=node_modules/laravel-mix/setup/webpack.config.js

'cross-env' is not recognized as an internal or external command,
operable program or batch file.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! @ dev: `cross-env NODE_ENV=development webpack --progress --hide-
modules --config=node_modules/laravel-mix/setup/webpack.config.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the @ dev script.

node.jsを6.11.0に、npmを5.2.0にアップデートしましたが、ダメでした。Windows7でHomesteadを動かしています。

どうすればいいですか?

cross-env をプロジェクト内ではなく、グローバルに動作させる必要があります。

1) 削除 node_modules フォルダ

2) 実行

npm install --global cross-env

3) 削除 "cross-env": "^5.0.1", から package.json ファイル devDependencies セクションを作成します。実は、このステップを飛ばして、package.jsonをそのままにしておくこともできます。お望みであれば。

4) 実行

npm install --no-bin-links

5) 実行

npm run dev

そして、その動作を確認する

P.S Windows 10, Laravel-5.4でテストしました。

P.P.S Laravel-5.6を搭載したWindows 10では、この問題は発生しません、したがって アップデイト が代替策となります。