javascript 错误:`fsevents` 不可用(这个观察器只能在 Darwin 上使用)

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/52427810/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-10-29 09:56:10  来源:igfitidea点击:

Error: `fsevents` unavailable (this watcher can only be used on Darwin)

javascriptreact-nativereact-native-cli

提问by Aly Dabbous

I'm cloning an existing react native app in my local environment, but every time I run react-native run-iosI get the following error:

我正在本地环境中克隆现有的 React Native 应用程序,但每次运行时react-native run-ios都会出现以下错误:

** BUILD FAILED **


The following commands produced analyzer issues:
    Analyze /Users/alydabbous/code/Dabbous-Innopay/ideal-app/node_modules/react-native/ReactCommon/yoga/yoga/YGNodeList.c normal x86_64

    Analyze /Users/alydabbous/code/Dabbous-Innopay/ideal-app/node_modules/react-native/ReactCommon/yoga/yoga/Yoga.c normal x86_64
    Analyze Base/RCTModuleMethod.mm normal x86_64
(3 commands with analyzer issues)

The following build commands failed:
    Ld build/Build/Products/Debug-iphonesimulator/MyUros.app/MyUros normal x86_64
(1 failure)

Installing build/Build/Products/Debug-iphonesimulator/TPP.app
An error was encountered processing the command (domain=NSPOSIXErrorDomain, code=2):
Failed to install the requested application
An application bundle was not found at the provided path.
Provide a valid path to the desired application bundle.
Print: Entry, ":CFBundleIdentifier", Does Not Exist

Command failed: /usr/libexec/PlistBuddy -c Print:CFBundleIdentifier build/Build/Products/Debug-iphonesimulator/TPP.app/Info.plist
Print: Entry, ":CFBundleIdentifier", Does Not Exist

And this error in react-packager:

而 react-packager 中的这个错误:

Loading dependency graph...(node:52097) UnhandledPromiseRejectionWarning: Error: `fsevents` unavailable (this watcher can only be used on Darwin)
    at new FSEventsWatcher (/Users/alydabbous/code/Dabbous-Innopay/ideal-app/node_modules/sane/src/fsevents_watcher.js:41:11)
    at createWatcher (/Users/alydabbous/code/Dabbous-Innopay/ideal-app/node_modules/jest-haste-map/build/index.js:600:23)
    at Array.map (<anonymous>)
    at HasteMap._watch (/Users/alydabbous/code/Dabbous-Innopay/ideal-app/node_modules/jest-haste-map/build/index.js:747:25)
    at _buildPromise._buildFileMap.then.then.hasteMap (/Users/alydabbous/code/Dabbous-Innopay/ideal-app/node_modules/jest-haste-map/build/index.js:279:21)
    at <anonymous>
    at process._tickCallback (internal/process/next_tick.js:189:7)
(node:52097) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:52097) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

I only get this error when I run react-native run-iosfor a repo I cloned. But when I create a new react-native app everything works fine. I tried everything: killing the servers, uninstalling and installing node again, deleting my node_modules file, etc and still I can't solve this issue. Any help would be much appreciated. Thanks.

当我运行react-native run-ios我克隆的存储库时,我只会收到此错误。但是当我创建一个新的 react-native 应用程序时,一切正常。我尝试了一切:杀死服务器,再次卸载并安装节点,删除我的 node_modules 文件等,但仍然无法解决此问题。任何帮助将非常感激。谢谢。

回答by Felix Too

For me I uninstalled watchmanand then reinstalled it using brewas shown below:

对我来说,我卸载watchman然后使用brew如下所示重新安装它:

npm r -g watchman 
brew install watchman

回答by Sid Jonnala

npm install -g fsevents

Worked for me

对我来说有效

回答by Jonathan Bareket

I got the same error when trying to run jest watch. Simple solution for me was to install the fsevents module through npm (which I assume this is what your error message is telling you). I was also working with a React app and had additional similar errors.

我在尝试运行 jest watch 时遇到了同样的错误。对我来说,简单的解决方案是通过 npm 安装 fsevents 模块(我认为这是您的错误消息告诉您的)。我也在使用 React 应用程序并遇到了其他类似的错误。

Hope this helps!

希望这可以帮助!

回答by mahmoud mehdi

I faced the following issue while coding a react native app. It seemed to be an error with watchamn, so all we need is to re-install it:

我在编写 React Native 应用程序时遇到了以下问题。watchamn 似乎是一个错误,所以我们只需要重新安装它:

brew remove watchman

brew remove watchman

brew install watchman

brew install watchman

I hope it helps,

我希望它有帮助,

回答by Carl Manaster

In my case, following a MacOS update, I needed the updated version of yarn.

就我而言,在 MacOS 更新之后,我需要更新版本的yarn.

curl --compressed -o- -L https://yarnpkg.com/install.sh | bash

回答by Manoj Amalraj

Sometimes this issue could be related to the node version you are running. If you are using nvm, try switching to a different node version and see if it fixes. It worked for me on a similar issue.

有时,此问题可能与您运行的节点版本有关。如果您使用的是 nvm,请尝试切换到不同的节点版本并查看它是否已修复。它在类似的问题上对我有用。

回答by tic

This happened in a create-react-appfor me. I resolved this by updating react-scripts

这发生在create-react-app我身上。我通过更新解决了这个问题react-scripts

yarn add react-scripts@latest

yarn add react-scripts@latest

Then deleting node_modules, and re-installing

然后删除node_modules,重新安装

yarn

yarn