2016-11-10 14 views
0

新鮮なLaravel 5.3アプリケーション用の新しいHomestead(ボックスバージョン0.5)を使用しています。ホストOSは、それが(共有フォルダの内部でない場合は、もちろん)作品npm install --no-bin-linksLaravel Homestead、npm install --no-bin-linksエラー

npm WARN deprecated [email protected]: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue 
npm WARN deprecated [email protected]: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue 
npm WARN deprecated [email protected]: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to [email protected]^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree. 
npm ERR! Linux 4.4.0-22-generic 
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "install" "--no-bin-links" 
npm ERR! node v5.12.0 
npm ERR! npm v3.8.6 

npm ERR! Maximum call stack size exceeded 
npm ERR! 
npm ERR! If you need help, you may report this error at: 
npm ERR!  <https://github.com/npm/npm/issues> 

npm ERR! Please include the following file with any support request: 
npm ERR! /home/vagrant/t1/t1/npm-debug.log 

NPM-debug.logに

......... 
71199 silly build [email protected] 
71200 silly build [email protected] 
71201 silly build [email protected] 
71202 silly build [email protected] 
71203 silly build [email protected] 
71204 silly build [email protected] 
71205 silly build [email protected] 
71206 silly build [email protected] 
71207 silly build [email protected] 
71208 silly build [email protected] 
71209 silly build [email protected] 
71210 verbose stack RangeError: Maximum call stack size exceeded 
71210 verbose stack  at process.stderr (internal/process/stdio.js:23:46) 
71210 verbose stack  at isTTY (/usr/lib/node_modules/npm/node_modules/npmlog/node_modules/gauge/progress-bar.js:11:17) 
71210 verbose stack  at Object.ProgressBar.show (/usr/lib/node_modules/npm/node_modules/npmlog/node_modules/gauge/progress-bar.js:132:8) 
71210 verbose stack  at Object.ProgressBar.pulse (/usr/lib/node_modules/npm/node_modules/npmlog/node_modules/gauge/progress-bar.js:124:8) 
71210 verbose stack  at EventEmitter.log.emitLog (/usr/lib/node_modules/npm/node_modules/npmlog/log.js:178:40) 
71210 verbose stack  at EventEmitter.<anonymous> (/usr/lib/node_modules/npm/node_modules/npmlog/log.js:170:8) 
71210 verbose stack  at EventEmitter.<anonymous> (/usr/lib/node_modules/npm/node_modules/npmlog/log.js:231:21) 
71210 verbose stack  at tracker.(anonymous function) [as silly] (/usr/lib/node_modules/npm/node_modules/npmlog/log.js:79:19) 
71210 verbose stack  at module.exports (/usr/lib/node_modules/npm/lib/install/action/build.js:8:7) 
71210 verbose stack  at actions.(anonymous function) (/usr/lib/node_modules/npm/lib/install/actions.js:48:12) 
71211 verbose cwd /home/vagrant/t1/t1 
71212 error Linux 4.4.0-22-generic 
71213 error argv "/usr/bin/nodejs" "/usr/bin/npm" "install" "--no-bin-links" 
71214 error node v5.12.0 
71215 error npm v3.8.6 
71216 error Maximum call stack size exceeded 
71217 error If you need help, you may report this error at: 
71217 error  <https://github.com/npm/npm/issues> 
71218 verbose exit [ 1, true ] 

--no-bin-linksせずに実行しているとき、私はこのエラーを取得するWindowsの10

です

ノードとnpm(6.9.1,3.10.8)を更新しました。同じ問題です。

+0

少し遅れましたが、解決しましたか?どうやって?私は同じ状況にあります... – andcl

+0

@ andcl85いいえ、私はホストマシン(そして 'artisan serve' iirc)からnpmを使用していましたが、データベースにはHomesteadを使っています。そして、後で私は糸に切り替えました。「糸無しのリンク」はうまくいくようです。 – AlexP11223

+0

ありがとうございます。私はホームステッドを使用してすべてを動作させる方法を開発しています;)。私は答えでそれを説明しています。 – andcl

答えて

1

私は特にという方法を開発しました。

  • まず、ベイグラント共有フォルダ外のディレクトリを行います。ここでは基本的な手順は次のとおりです。たとえば、「/home/vagrant/node」などです。
  • ここで、package.jsonファイルを私たちのLaravelインストールからコピーして、何をインストールするかを教えてください...最近作成された 'node'ディレクトリはUnixシステムにあり、Windowsとは関係ありません(両者の間の共有フォルダの一部ではないため) (Unixのシンボリックリンクをサポートして--no-ビン・リンクオプションを指定せずにエラーが起こらないはずです。;)
  • 第三に、我々はNPM installコマンドをを実行します
  • 最後に、我々は「node_modulesを移動する 'ディレクトリに移動して、Windowsホストマシンの管理者権限を持つコンソールからコマンドを更新してコマンドを実行して、Laravelインストールフォルダ(共有のもの)に戻してください。それ以外の場合、作成されたシンボリックリンクを移動しようとするとエラーになります。

これはLaravelアプリケーションを提供するUnixマシンと同じように機能します。 このプロセスは問題なくLaravel Mixをインストールするのに役立ちます。

乾杯!

+0

hm。管理者として実行しているときにシンボリックリンクを移動することができれば、移動せずにここに作成することはできませんか?あなたがパッケージを追加したい時に毎回それをやっているのは不便です:) npmのプリインストールスクリプトを使うなど、少なくとも自動化できるかもしれません。しかし、私は最も簡単な解決策は糸に切り替えることだけだと思う​​:)それはまた、yarn.lockと速いインストールのような素敵な機能があります。 (プロジェクトルートにあるafter.shにhttps://yarnpkg.com/en/docs/install#linux-tabコマンドを追加するだけでHomesteadにインストールすることができます) – AlexP11223

+0

私の経験は一度だけインストールされ、毎回のnpmインストールコマンドはエラーを投げず、最適解を生み出します。 nweパッケージを追加するたびにそれを行う必要はありません;) – andcl

0

それは私が通常使用するシステムであるとしてあなたは、これを試すことができます。

> npm install --no-bin-links 
> npm install --no-bin-links 
> npm rebuild node-sass 

を最初npm install Ususallyにエラーが出て、「最大コールスタックサイズを超えました。」。 2番目のnpm installは、インストールを中止してインストールを終了します。 node-sassは通常この時点で壊れているので、npm rebuildnode-sassのインストールを修正します。