composer diagnose を実行してみると proc_open(NUL): failed to open stream: No such file or directory とか言われる

2019/09/08

結論

OneDrive !またお前かーーーっ?

現象

きっかけは、 php artisan serve でおかしなエラーがでるようになったこと。

つい昨日まで動いていたのになぜだ!と状況を調べてみると、どうも composer がおかしい模様。

composer diagnose

を実行してみると、不思議なエラーが出て止まってしまう。

[ErrorException]
    proc_open(NUL): failed to open stream: No such file or directory

composer を再インストールしてみたりいろいろしたんだけれど、状況変わらず。

で、 github のこの issue にたどり着きまして…

OneDrive 配下にあったプロジェクトフォルダを外に出したら何事もなく動きましたとさ。

もう既に調べる気も起らないんで推測になってしまいますが、少し前に新しく作ったフォルダだったので、OneDriveの属性がオンデマンドになってた、とかそんなんだと思います。

※オンデマンドとはファイルシステム上にエントリだけは存在していて、実体がない状態。例えば Explorer でダブルクリックすると、常駐してる OneDrive が反応して、即座にダウンロードして開く、なんてことをしてくれます。これによって、普段使用しないファイルはクラウドだけに存在する=ローカルディスク容量増えてステキ?な状態になるんですが、この仕組みが仇になった、ということでした。

環境構築composer,PHP

Posted by S