web-dev-qa-db-ja.com

Reactjs開発サーバーがmacos catalinaで起動しない

Create-react-appを使用して新しいreactjsプロジェクトを作成しようとしています。 yarn startを実行すると、開発サーバーが起動せず、コンソールに次のメッセージが表示されます。

Starting the development server...

dyld: lazy symbol binding failed: Symbol not found: _FSEventStreamCreate
  Referenced from: /Users/username/project/node_modules/fsevents/build/Release/fse.node
  Expected in: flat namespace

dyld: Symbol not found: _FSEventStreamCreate
  Referenced from: /Users/username/project/node_modules/fsevents/build/Release/fse.node
  Expected in: flat namespace

error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

それは古いものではなく新しく作成されたreactjsプロジェクトで起こります。 nodejsをbrew install nodeでインストールして再インストールします。create-react-appも再インストールして、何も起こりません。

私の環境に関する情報:

  1. OS:macOS Catalina、バージョン10.15.4(19E266)
  2. ノード:v13.11.0
  3. create-react-app:バージョン3.4.1
  4. 糸:バージョン1.22.4
  5. npm:バージョン6.13.7

完璧な答えを事前にありがとう

3
thecassion

問題は再び繰り返されました。それを解決するには、brew website に移動し、インストーラーコード/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"をコピーするだけです。

1
thecassion

Reactではなく、PhoenixとElixirを使用しているときに同様のエラーが発生しました。この質問はエラーメッセージ_Symbol not found: _FSEventStreamCreate_の唯一の検索結果の1つであるため、私の問題と解決策を共有してください:

MacOS Mojave 10.14.6を使用しており、Elixir 1.9.4 (compiled with Erlang/OTP 22)、Phoenix _v1.4.10_を使用してPhoenixアプリを作成しようとしています。問題は、ライブのリロードがうまくいかなかったことでした。変更を加えていなくても、ページが何度も更新され続けました。

私のサーバー出力を見ると、このようなことが繰り返し繰り返されているのがわかりました。

_[error] Task #PID<0.1149.0> started from RumblWeb.Endpoint terminating
** (stop) :watcher_command_error
    (phoenix) lib/phoenix/endpoint/watcher.ex:29: Phoenix.Endpoint.Watcher.watch/3
    (elixir) lib/task/supervised.ex:90: Task.Supervised.invoke_mfa/2
    (stdlib) proc_lib.erl:249: :proc_lib.init_p_do_apply/3
Function: &Phoenix.Endpoint.Watcher.watch/3
    Args: ["node", ["node_modules/webpack/bin/webpack.js", "--mode", "development", "--watch-stdin"], [cd: "/Users/george/code/phoenix/programming_phx/rumbl/assets"]]

Webpack is watching the files…

...

dyld: lazy symbol binding failed: Symbol not found: _FSEventStreamCreate
  Referenced from: /Users/george/code/phoenix/programming_phx/rumbl/assets/node_modules/fsevents/build/Release/fse.node
  Expected in: flat namespace

dyld: Symbol not found: _FSEventStreamCreate
  Referenced from: /Users/george/code/phoenix/programming_phx/rumbl/assets/node_modules/fsevents/build/Release/fse.node
  Expected in: flat namespace
_

つまりwebpackでエラーが発生し、ページが再コンパイルおよび再読み込みされましたが、これらのエラーの原因はdyldおよびfseventsに関係していました。

エラーの意味がわかりませんが、nodeのバージョンを_v12.10.0_から_v13.13.0_にアップグレードすると修正されました。

(フェニックスサーバーを再起動することを忘れないでください。また、_mix phx.server_が実行されているターミナルウィンドウがノードの新しい更新されたバージョンを使用していることを確認してください。)

1
GMA

Node_modules/webpack-dev-server内のfseventフォルダーを削除すると、うまくいきました。

1
Wally Kolcz