react-native: команда не знайдена


126

Я отримую -bash: reakct-native: команда не знайдена помилка під час створення проекту-native проект.

Нижче наведена додаткова інформація

1. brew --version
   homebrew 0.9.9
2  brew info watchman
   watchman `enter code here`stable 4.50
   /usr/local/Cellar/watchman/4.4.0
3. brew info flow
   stable 0.24.1
   /usr/local/Cellar/flow/0.24.1
4. brew info node
   stable 6.1.0
   /usr/local/Cellar/node/6.1.0
5. npm -version
   3.8.6
6. echo $PATH
/Users/Ashok/.rbenv/shims:/Users/Ashok/.rbenv/shims:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

Я спробував запропоновані кроки із наведеного нижче посилання, але все-таки я отримую ту ж помилку

  1. react-native-command-not-found

У мене немає жодного каталогу "npm", який вони вказали у рішенні

Ashoks-MacBook-Pro:share Ashok$ ls
aclocal     doc     info        ruby-build  zsh
autoconf    emacs       man     systemtap

Але я виявив, що файл npm існує внизу.

/usr/local/Cellar/node/6.1.0/etc/bash_completion.d

Я видалив натиснуту реакцію та встановив її знову, але все-таки я стикаюся з тим же питанням.


13
Ви пробували npm i -g react-native-cliзамість npm i -g react-native?
Надер Дабіт

2
я використовую "sudo npm install -g react-native-cli"
Ashok R

Хм .. не впевнений , але , можливо , перевірити цю тему stackoverflow.com/questions/33282545 / ...
Надер Дабіт

4
Як вони вказали, я повинен додати / usr / local / share / npm / bin у мою змінну PATH. але у мене немає жодного каталогу npm всередині / usr / local / share. Дякую @NaderDabit
Ashok R

1
коли я запускаю, npm config --global get prefix я можу побачити каталог npm у цьому місці -> /usr/local/Cellar/node/6.1.0/libexec/npm. Я додав його до змінної PATH . Виконана react-native init someAppкоманда ще одна і та ж помилка :-(
Ashok R

Відповіді:


250

Після додавання правильного шляху до змінної PATH проблема вирішується.

Нижче наведено кроки, щоб знайти правильний шлях.

1. Enter: npm install -g react-native-cli
output: /usr/local/Cellar/node/6.1.0/libexec/npm/bin/react-native ->/usr/local/Cellar/node/6.1.0/libexec/npm/lib/node_modules/react-native-cli/index.js/usr/local/Cellar/node/6.1.0/libexec/npm/lib
└── react-native-cli@0.2.0 

Зверху виводу ви чітко бачите шлях: /usr/local/Cellar/node/6.1.0/libexec/npm/bin/react-native

export PATH="/usr/local/Cellar/node/6.1.0/libexec/npm/bin:$PATH"

react-native init appName

cd appName

react-native run-ios

якщо ви отримуєте xcrun: error: не в змозі знайти утиліту "simctl" на цьому етапі, ви можете перенести її за допомогою наведених нижче кроків

XCode -> Налаштування -> Місцеположення -> Інструменти командного рядка -> Виберіть Xcode 7.2.1

Ви можете знайти оригінальне рішення від xcrun, не в змозі знайти simctl

Завдяки @fbozo

Це воно!!!


Немає папки для сміття всередині npm !?
Ефтехарі

1
Її не вирішено назавжди. Але після відкриття нового терміналу відбувається те саме питання. Як це виправити назавжди?
Баласубраманіан


Це не працює, якщо ви не використовуєте sudo для установки npm-модулів. Див stackoverflow.com/a/49124013/280795 для виправлення.
Нік Лотьян

У моєму випадку я змінив мою версію вузла за замовчуванням з NVM і забув знову встановити натиснуту реакцію для цієї нової версії вузла. Дякую!
Стів Мейснер

42

Після того, як постійно стикаєтеся з цією проблемою, і натискаєте на цю відповідь і не працюєте.

Якщо припустити, що ви не запускаєте npm як root / sudo (чого не слід робити!), То ваші npm-модулі будуть встановлені в тому, що ви встановите для каталогу за замовчуванням .

Якщо припустити, що ви дотримувались цих інструкцій, а ваш каталог за замовчуванням ~ / .npm-global, то вам потрібно додати ~ / .npm-global / bin на свій шлях.

Це викладено в цих інструкціях, але для мене я додав це до .bashrc:

export PATH=$PATH:$HOME/.npm-global/bin

Потім перезавантажте свою оболонку і вона запрацює.


після того, як втомився від спроб майже сотень рішень, це спрацювало привабливість у моєму випадку, моя проблема була фактично, коли я закрив термінал і запустився знову, тоді команда реакцій не знайшла.
Крантіз


18

Якщо у кого є помилка, спробуйте це з sudo:

sudo npm install -g react-native-cli


9

Я зіткнувся з цим питанням, будучи трохи дурним. Я використовую nvm для управління своїми різними версіями вузла, і встановив "react-native" у версії вузла, яка не була моєю замовчуванням. Відкривши нову оболонку, я втратив команду. :) Перемикання назад на звичайно виправлені речі.


1
Або просто глобально встановити його знову. Soooo, просто. $ npm i -g react-native-cli
Keeprock

9

Якщо з якихось дивних причин шлях до шляху react-nativeнемає PATH, слід взяти до відома, де встановлений react-nativeвиконуваний файл. Як правило, проблема з command not foundтим, що вони не входять PATH.

Наприклад, я використовую nodenvі запускаюnpm install -g react-native

/Users/khoa/.nodenv/versions/10.10.0/bin/react-native -> /Users/khoa/.nodenv/versions/10.10.0/lib/node_modules/react-native/local-cli/wrong-react-native.js

Тому мені потрібно додати це до свого PATH

export PATH=$HOME/.nodenv/versions/10.10.0/bin:$PATH

Ви можете підтвердити за допомогою echo $PATH

Або ви можете використовувати npx, наприклад, для виконання локальних модулів npm

npx react-native run-ios --simulator='iPhone X'

4

Якщо ви використовуєте пряжу , можливо, доведеться запускати команди з пряжею спереду. Приклад:

yarn react-native info

3

У мене було те саме питання, але половина вашого підходу не працювала для мене. Я взяв шлях так, як ви це зробили: з виходу react-native-cli instal, але потім вручну написав у ect / pathes з:

sudo nano /etc/paths

наприкінці я додав шлях від виводу, потім ctrl x і y, щоб зберегти. Тільки цей спосіб спрацював, але велика подяка за підказку!


3

Спочатку запустіть цю команду на своєму терміналі.

npm i -g react-native-cli

Потім створіть свій власний проект-реактор за допомогою цієї команди.

React-native init Project name

потім перейдіть до каталогу проектів командою cd.


3

Встановити за react-native-cliдопомогою npm install -g react-native-cli. Можливо, вам доведеться використовувати подібне судоsudo npm install -g react-native-cli


2

Згідно з офіційною документацією, для мене працювала наступна команда.

  • npx-рідний реактивний run-android

Посилання тут

Я намагався запустити команду "реагувати-нативно запустити android". переконайтеся, що у вас є глобальний кліп для реакцій, встановлений у всьому світі!


1

У випадку, якщо хтось має цю проблему, у мене була схожа проблема з qix, але більш нюансованою.

Нові термінали оболонки за замовчуванням мають іншу версію вузла. Я змінив би свій термінал на той вузол, який я хотів, але коли сценарій пакету запустився, він запустився в новій оболонці, і він отримав версію за замовчуванням, в якій не було встановлено нативної реакції.

Я використовував nvm alias default x.x.xтак, щоб нові оболонки успадкували потрібну версію за замовчуванням.


0

Це дуже дивно, на моєму боці (macOS 10.14), я впевнений, що мій вузол та npm працюють, але я продовжував отримувати команду, яку не знайдено лише для цього конкретного пакету. Я в кінцевому рахунку робив наступне:

Тепер ви можете налагоджувати ієрархію перегляду та бачити журнали консолей у реакторі-налагоджувачі


0
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install yarn
brew install node
brew install watchman
brew tap AdoptOpenJDK/openjdk
brew cask install adoptopenjdk8
npm install -g react-native-cli

1
чому нам потрібно встановити це багато речей, щоб вирішити проблему так мало? наприклад: використання ядерної зброї на колоніях мурашок.
zinoadidi

-1

спробуйте скористатися реальною реакцією --help і подивіться, що з’являється. спробуйте завити

реагуйте на рекомендацію рідної бібліотеки:

Якщо ви отримаєте помилку на зразок Неможливо знайти модуль 'npmlog', спробуйте встановити npm безпосередньо: curl -0 -L https://npmjs.org/install.sh | судо ш.

https://facebook.github.io/react-native/docs/getting-started.html


первісна проблема полягає в тому, що команда 'react-native' не знайдена. неможливо запустити реагувати на нативні
допомогти

Я проігнорував той факт, що ви помилилися, встановивши React Native, дотримуючись кроків в офіційній документації Facebook, тому що я вважав, що ви не новачок. Тепер, коли я впевнений, що ви новачок, я можу допомогти вам краще
Муріло Петручі
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.