无法在 react native 教程中启动 npm

Cannot start npm in the react native tutorial

我今天开始使用 React Native。我以前从未使用过它。我尝试遵循我一生中遵循的最简单的教程:quick-start 直到 npm start

我没办法运行。我已经尝试了几个小时,因为它看起来很荒谬,但事实是我没有得到它。

我用Ubuntu16.04

npm -v: 4.6.1
node -v: v8.4.0

当然,我用谷歌搜索了很多,但没有找到任何人解决我的问题。

我遇到了这些错误:

react-native-scripts start

01:06:19: Unable to start server See https://git.io/v5vcn for more information, either install watchman or run the following snippet:
sudo sysctl -w fs.inotify.max_user_instances=1024 sudo sysctl -w fs.inotify.max_user_watches=12288 npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! AwesomeProject@0.1.0 start: react-native-scripts start npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the AwesomeProject@0.1.0 start script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

我在尝试时收到了这些警告:create-react-native-app AwesomeProject

npm WARN react-redux@5.0.6 requires a peer of react@^0.14.0 || ^15.0.0-0 || ^16.0.0-0 but none was installed.

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.1.1 (node_modules/jest-haste-map/node_modules/sane/node_modules/fsevents):

npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

npm WARN react-native-gesture-handler@1.0.0-alpha.17 requires a peer of react@>= 16.0.0 but none was installed.

npm WARN react-native-branch@2.0.0-beta.3 requires a peer of react@>=15.4.0 but none was installed.

npm WARN lottie-react-native@1.1.1 requires a peer of react@>=15.3.1 but none was installed.

我运行 sudo npm i -g react什么也没有,然后sudo npm i -g react@15.6.1什么也没有。

我无法安装 16.0.0,因为 "options" 是:0.0.1, 0.0.2, 0.0.3, 0.1.2, 0.2.0, 0.2.1, 0.2.2, 0.2.3, 0.2.4, 0.2.5, 0.2.6, 0.3.0, 0.3.4, 0.3.5, 0.5.0, 0.5.1, 0.5.2, 0.6.0, 0.6.1, 0.6.2, 0.6.3, 0.7.0, 0.7.1, 0.8.0, 0.9.0-rc1, 0.9.0, 0.10.0-rc1, 0.10.0, 0.11.0-rc1, 0.11.0, 0.11.1, 0.11.2, 0.12.0-rc1, 0.12.0, 0.12.1, 0.12.2, 0.13.0-alpha.1, 0.13.0-alpha.2, 0.13.0-beta.1, 0.13.0-beta.2, 0.13.0-rc1, 0.13.0-rc2, 0.13.0, 0.13.1, 0.13.2, 0.13.3, 0.14.0-alpha1, 0.14.0-alpha2, 0.14.0-alpha3, 0.14.0-beta1, 0.14.0-beta2, 0.14.0-beta3, 0.14.0-rc1, 0.14.0, 0.14.1, 0.14.2, 0.14.3, 0.14.4, 0.14.5, 0.14.6, 0.15.0-alpha.1, 0.14.7, 15.0.0-rc.1, 15.0.0-rc.2, 0.14.8, 15.0.0, 15.0.1, 15.0.2-alpha.1, 15.0.2-alpha.2, 15.0.2-alpha.3, 15.0.2-alpha.4, 15.0.2, 15.0.3-alpha.1, 15.0.3-alpha.2, 15.1.0-alpha.1, 15.1.0, 15.2.0-rc.1, 15.2.0-rc.2, 15.2.0, 15.2.1, 15.3.0-rc.1, 15.3.0-rc.2, 15.3.0-rc.3, 15.3.0, 15.3.1-rc.1, 15.3.1-rc.2, 15.3.1, 15.3.2-rc.1, 15.3.2, 15.4.0-rc.1, 15.4.0-rc.2, 15.4.0-rc.3, 15.4.0-rc.4, 15.4.0, 15.4.1, 15.4.2, 16.0.0-alpha, 16.0.0-alpha.0, 16.0.0-alpha.2, 16.0.0-alpha.3, 16.0.0-alpha.4, 16.0.0-alpha.5, 16.0.0-alpha.6, 15.5.0-rc.1, 16.0.0-alpha.7, 15.5.0-rc.2, 16.0.0-alpha.8, 15.5.0, 15.5.1, 15.5.2, 15.5.3, 15.5.4, 16.0.0-alpha.9, 0.14.9, 16.0.0-alpha.10, 16.0.0-alpha.11, 16.0.0-alpha.12, 15.6.0-rc.1, 16.0.0-alpha.13, 15.6.0, 15.6.1, 16.0.0-beta.1, 16.0.0-beta.2, 16.0.0-beta.3, 16.0.0-beta.4, 16.0.0-beta.5

并且 https://git.io/v5vcn 与 github 公开票一样有用...

所以,我不知道哪里出了问题。有人尝试 运行 使用 ubuntu 16.04 的简单教程吗?也许有人得到了答案。

我解决了,好像我的实例和手表不够用。只需 运行 这两个命令,它就会起作用。

sudo sysctl -w fs.inotify.max_user_instances=1024
sudo sysctl -w fs.inotify.max_user_watches=12288

记住:

npm -v: 4.6.1
node -v: v8.4.0

在错误消息的开头,您会看到系统生成的两个 cli 代码片段。按顺序复制粘贴和 运行 中的每一个。它对我有用。我在 OSX.

上使用终端

我在错误中得到了完全不同的命令,这可能是我安装的 Node 和 npm 更新版本的结果(npm -v: 5.6.0 和 node -v: v8.11.3):

  sudo sysctl -w kern.maxfiles=5242880
  sudo sysctl -w kern.maxfilesperproc=524288

这些通过 Expo 应用在 iOS 中为我获取教程 运行。