react-native: ไม่พบคำสั่ง


127

ฉันได้รับ-bash: react-native: command not found errorขณะสร้าง react-native project

ด้านล่างนี้เป็นข้อมูลเพิ่มเติม

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. ตอบสนองพื้นเมืองคำสั่งที่ไม่พบ

ฉันไม่มีไดเร็กทอรี "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

ฉันถอนการติดตั้ง react-native และติดตั้งอีกครั้ง แต่ฉันก็ยังประสบปัญหาเดียวกัน


13
คุณลองnpm i -g react-native-cliแทนnpm i -g react-nativeหรือยัง?
Nader Dabit

2
ฉันใช้ "sudo npm install -g react-native-cli"
Ashok R

อืม .. ไม่แน่ใจ แต่อาจจะลองดูนะครับstackoverflow.com/questions/33282545/…
Nader Dabit

4
ตามที่ระบุไว้ฉันต้องเพิ่ม / usr / local / share / npm / bin ในตัวแปรเส้นทางของฉัน แต่ฉันไม่มีไดเร็กทอรี 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"ในขั้นตอนนี้คุณสามารถ reslove โดยใช้ขั้นตอนด้านล่าง

XCode -> Preferences -> Locations -> Command Line Tools -> เลือก Xcode 7.2.1

คุณสามารถค้นหาโซลูชันดั้งเดิมจากxcrun ไม่พบ simctl

ขอบคุณข้อมูล @fbozo

แค่นั้นแหละ!!!


ไม่มีโฟลเดอร์ bin ภายใน npm !?
Eftekhari

1
มันไม่ได้รับการแก้ไขอย่างถาวร แต่หลังจากเปิดเทอร์มินัลใหม่ปัญหาเดียวกันก็เกิดขึ้น จะแก้ไขอย่างถาวรได้อย่างไร?
Balasubramanian


จะไม่ได้ผลถ้าคุณไม่ได้ใช้ sudo เพื่อติดตั้งโมดูล npm ของคุณ ดูstackoverflow.com/a/49124013/280795สำหรับการแก้ไข
Nick Lothian

ในกรณีของฉันฉันได้เปลี่ยนเวอร์ชันเริ่มต้นของโหนดด้วย NVM และลืมที่จะติดตั้ง react-native อีกครั้งสำหรับเวอร์ชันโหนดใหม่นี้ ขอบคุณ!
Steve Meisner

42

หลังจากพบปัญหานี้อย่างต่อเนื่องและกดปุ่มคำตอบนี้แล้วไม่ได้ผล ..

สมมติว่าคุณไม่ได้ทำงาน NPM เป็นราก / sudo (ซึ่งคุณไม่ควรทำ!) โมดูล NPM ของคุณจะได้รับการติดตั้งในสิ่งที่คุณตั้งค่าไดเรกทอรีเริ่มต้นของคุณจะเป็น

สมมติว่าคุณได้ทำตามคำแนะนำเหล่านั้นและไดเร็กทอรีเริ่มต้นของคุณคือ ~ / .npm-global คุณต้องเพิ่ม ~ / .npm-global / bin ในพา ธ ของคุณ

สิ่งนี้ระบุไว้ในคำแนะนำเหล่านั้น แต่สำหรับฉันฉันเพิ่มสิ่งนี้ใน. bashrc:

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

จากนั้นรีสตาร์ทเชลล์ของคุณและจะใช้งานได้


หลังจากเบื่อกับการลองใช้วิธีแก้ปัญหาเกือบร้อยวิธีสิ่งนี้ใช้ได้ผลกับเคสของฉันปัญหาของฉันจริงๆแล้วคือเมื่อฉันปิดเทอร์มินัลและเริ่มต้นใหม่อีกครั้งไม่พบคำสั่ง react-native
Krantiz



9

ฉันพบปัญหานี้โดยการงี่เง่าเล็กน้อย ฉันใช้ nvm เพื่อจัดการโหนดเวอร์ชันต่างๆของฉันและติดตั้ง react-native ในเวอร์ชันของโหนดที่ไม่ใช่ค่าเริ่มต้นของฉัน เมื่อเปิดเชลล์ใหม่ฉันสูญเสียคำสั่ง :) เปลี่ยนกลับสิ่งที่แน่นอนคงที่


1
หรือเพียงแค่ติดตั้งทั่วโลกอีกครั้ง ง่ายมาก $ npm i -g react-native-cli
Keeprock

9

หากมีเหตุผลแปลก ๆ เส้นทางไปยังreact-nativeไม่ได้อยู่ในPATHนั้นคุณควรสังเกตว่าreact-nativeมีการติดตั้งไฟล์ปฏิบัติการไว้ที่ใด โดยทั่วไปปัญหากับเป็นเพราะพวกเขาไม่ได้อยู่ในcommand not foundPATH

ตัวอย่างเช่นฉันใช้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'

5

หากคุณใช้เส้นด้ายคุณอาจต้องเรียกใช้คำสั่งโดยมีเส้นด้ายอยู่ข้างหน้า ตัวอย่าง:

yarn react-native info

3

มีปัญหาเดียวกัน แต่ครึ่งหนึ่งของวิธีการของคุณไม่ได้ผลสำหรับฉัน ฉันใช้เส้นทางในแบบที่คุณทำ: จากผลลัพธ์ของการติดตั้ง react-native-cli แต่จากนั้นเขียนด้วยตนเองใน ect / pathes ด้วย:

sudo nano /etc/paths

ในตอนท้ายฉันได้เพิ่มเส้นทางจากเอาต์พุตแล้ว ctrl x และ y เพื่อบันทึก วิธีนี้ใช้ได้ผล แต่ขอบคุณมากสำหรับเบาะแส!


3

ในตอนแรกให้รันคำสั่งนี้บนเทอร์มินัลของคุณ

npm i -g react-native-cli

จากนั้นสร้างโครงการตอบสนองของคุณโดยใช้คำสั่งนี้

React-native init Project name

จากนั้นย้ายไปยังไดเรกทอรีโครงการของคุณโดยใช้คำสั่ง cd



2

ตามเอกสารอย่างเป็นทางการคำสั่งต่อไปนี้ใช้ได้ผลสำหรับฉัน

  • npx react-native run-android

ลิงค์อยู่ที่นี่

ฉันพยายามเรียกใช้โดยคำสั่ง "react-native run-android" ตรวจสอบให้แน่ใจว่าได้ติดตั้ง react-native cli ทั่วโลกแล้ว!


1

ในกรณีที่ใครมีปัญหานี้ฉันมีปัญหาคล้ายกับ qix แต่เหมาะสมกว่า

เทอร์มินัลเชลล์ใหม่จะดีฟอลต์เป็นโหนดเวอร์ชันอื่น ฉันจะเปลี่ยนเทอร์มินัลของฉันเป็นโหนดที่ฉันต้องการ แต่เมื่อบันเดิลสคริปต์ทำงานมันจะทำงานในเชลล์ใหม่และได้รับเวอร์ชันเริ่มต้นซึ่งไม่ได้ติดตั้ง react-native

ฉันใช้nvm alias default x.x.xเพื่อให้เชลล์ใหม่สืบทอดเวอร์ชันเริ่มต้นที่ฉันต้องการ


0

นี่เป็นเรื่องแปลกจริงๆในฝั่งของฉัน (macOS 10.14) ฉันค่อนข้างมั่นใจว่าโหนดและ npm ของฉันทำงานได้ แต่ฉันยังคงได้รับคำสั่งไม่พบเฉพาะสำหรับแพ็คเกจนี้เท่านั้น ฉันลงเอยด้วยการทำสิ่งต่อไปนี้:

  • ติดตั้งreact-native-debugger
  • ตรวจสอบให้แน่ใจว่าคุณเปิดใช้งานการดีบัก JS ระยะไกล เอกสาร
  • เรียกใช้ react-native-debugger
  • เรียกใช้แอป RN ของคุณ

ตอนนี้คุณสามารถดีบักมุมมองลำดับชั้นและดูบันทึกคอนโซลใน react-native-debugger


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

ลองใช้ react-native - help และดูว่าเกิดอะไรขึ้น ลอง curl

ตอบสนองคำแนะนำไลบรารีดั้งเดิม:

หากคุณได้รับข้อผิดพลาดเช่นไม่พบโมดูล 'npmlog' ให้ลองติดตั้ง npm โดยตรง: curl -0 -L https://npmjs.org/install.sh | sudo sh.

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


ปัญหาเดิมคือไม่พบคำสั่ง 'react-native' เป็นไปไม่ได้ที่จะเรียกใช้ react-native --help เช่นกัน
zinoadidi

ฉันเพิกเฉยต่อความจริงที่ว่าคุณทำผิดพลาดเมื่อติดตั้ง React Native โดยทำตามขั้นตอนในเอกสารอย่างเป็นทางการของ Facebook เพราะฉันคิดว่าคุณไม่ใช่มือใหม่ ตอนนี้ฉันแน่ใจว่าคุณเป็นมือใหม่ฉันสามารถช่วยคุณได้ดีขึ้น
Murilo Petruci
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.