ng: ไม่พบคำสั่งขณะสร้างโครงการใหม่โดยใช้ angular-cli


112

ติดตั้ง angular-cli ทั่วโลกโดยใช้ ( npm install -g angular-cli) แต่เมื่อฉันพยายามสร้างโครงการโดยใช้ng new my-projectมันเกิดข้อผิดพลาด:

ng: ไม่พบคำสั่ง


จะเกิดอะไรขึ้นเมื่อคุณพิมพ์ ng --help สิ่งนี้ยังถูกโพสต์บนพื้นที่เก็บข้อมูล cli เชิงมุม ตรวจสอบลิงค์
VirendraJ

แม้ว่าฉันจะพิมพ์ ng --help ปัญหาเดียวกัน ng: command not found ในบันทึกปัญหามีคำแนะนำให้ใช้ nvm แต่ฉันต้องการใช้ npm ฉันพยายามแก้ไขเส้นทางโดยเพิ่มนามแฝงใน. profile ของฉัน แต่มีการตั้งค่าพร็อกซีอยู่แล้วดังนั้นฉันจะเพิ่มเส้นทางใหม่โดยใช้ alias = alias ng = "Users / xxxx / npm / lib / node_modules / angular-cli / bin / ได้อย่างไร ng "
เลโก้

คุณสามารถโพสต์เวอร์ชันระบบปฏิบัติการของคุณและเวอร์ชัน npm ได้หรือไม่
pd farhad

ใช้ Mac OS เวอร์ชัน npm - 2.14.20 และเวอร์ชันโหนด - 4.4.0
เลโก้

3
คุณสามารถตรวจสอบได้หรือไม่ผ่าน ...npm ls --global --depth 0
Brocco

คำตอบ:


156

ปัญหาง่าย ๆnpmไม่รู้เรื่องng

เพียงแค่เรียกใช้npm link @angular/cliและควรทำงานได้อย่างราบรื่น


4
คุณช่วยอธิบายเพิ่มเติมเกี่ยวกับเรื่องนี้ได้ไหม
Pardeep Jain

4
@PardeepJain: คำสั่งลิงก์โดยทั่วไปจะสร้างลิงก์ส่วนกลางจากนั้นเชื่อมโยงเป้าหมายการติดตั้งส่วนกลางไปยังโฟลเดอร์ node_modules ของโครงการของคุณ
abhinavroy23

2
ไม่ได้ผลขออภัย alias ng="PATH-TO-GLOBAL/.npm-global/bin/ng" ( Location of ng file in npm folder) นี่เป็นเคล็ดลับ
saran3h

2
สิ่งนี้ได้ผล sudoเพิ่งมีการทำงานกับ sudo npm link @angular/cli.
Craig

3
ฉันสามารถยืนยันได้ว่าโซลูชันนี้ใช้งานได้ ฉันใช้ windows และสามารถยืนยันได้ว่าวิธีนี้ใช้ได้ผลสำหรับฉัน แต่ฉันต้องทำอะไรเพิ่มเติม: เรียกใช้ใน powershell: "Set-ExecutionPolicy Unrestricted" สิ่งนี้ช่วยให้คุณสามารถเรียกใช้ไฟล์. ps1 (powershell)
lucamuh

48

ครั้งแรกที่จะเลิกและได้รับการแทนที่ด้วยangular-cli @angular/cliดังนั้นหากคุณถอนการติดตั้ง angular-cli ที่มีอยู่npm uninstall angular-cliแล้วให้ติดตั้งแพ็คเกจใหม่ด้วยชื่อใหม่ @ angular / cli คุณอาจได้รับความขัดแย้ง เรื่องราวของฉันใน Windows 7 คือ:

ฉันได้ติดตั้ง angular-cli และติดตั้งใหม่โดยใช้npm install -g @angular/cliแต่หลังจากทำการเปลี่ยนแปลงการกำหนดค่าบางอย่างกับเครื่องมือบรรทัดคำสั่งฉันเริ่มได้รับคำสั่ง ng ไม่พบปัญหา ฉันใช้เวลาหลายชั่วโมงในการพยายามแก้ไข แต่ปัญหาข้างต้นเพียงอย่างเดียวไม่ได้ผล ฉันสามารถแก้ไขได้โดยใช้ขั้นตอนเหล่านี้:

ติดตั้งRapid Environment Editorและลบรายการ PATH สำหรับ node, npm, angular-cli หรือ @ angular / cli Node.js จะอยู่ในเส้นทางระบบของคุณ npm และรายการเชิงมุมอยู่ในเส้นทางผู้ใช้

ถอนการติดตั้ง node.js และติดตั้งเวอร์ชันปัจจุบันใหม่ (สำหรับฉัน 6.11.1) เรียกใช้ Rapid Environment Editor อีกครั้งและตรวจสอบว่า node.js และ npm อยู่ในเส้นทางระบบหรือผู้ใช้ของคุณ ถอนการติดตั้งเวอร์ชัน ng ที่มีอยู่ด้วย:

npm uninstall -g angular-cli

npm uninstall -g @angular/cli

npm cache clean

ลบC: \ Users \% คุณ% \ AppData \ Roaming \ NPM \ node_modules \ @angularโฟลเดอร์

รีบูตจากนั้นในที่สุดก็เรียกใช้:

npm install -g @angular/cli

จากนั้นกลั้นหายใจแล้ววิ่ง:

ng -v

ถ้าคุณโชคดีคุณจะได้รับความรัก กลั้นหายใจทุกครั้งที่คุณเรียกใช้คำสั่ง ng เนื่องจาก 'command not found' ปรากฏขึ้นอีกครั้งอย่างน่าอัศจรรย์สำหรับฉันหลายครั้งหลังจากที่ ng ทำงานได้ดีและฉันคิดว่าปัญหาได้รับการแก้ไขแล้ว


3
sudo npm install -g @ angular / cli
Mohammad Suhel Shaikh

ขออภัยไม่สามารถใช้งานได้ ฉันลองใช้คำสั่งทั้งหมดข้างต้นและใช้ sudo เพื่อออกคำสั่ง ฉันใช้ mac OS
พิกเซล

ฉันทำตามรูปแบบนี้และทำงานได้ดีสำหรับฉันโดยไม่ต้องใช้ตัวแก้ไขสภาพแวดล้อมอย่างรวดเร็ว ใน Windows 10 ฉันอัปเดต Paths ด้วยตนเองใน Einvronment Variables ฉันไม่ได้เรียกใช้ Node หรือ Angular มาระยะหนึ่งแล้วเนื่องจากโปรเจ็กต์สุดท้ายของฉันคือ dotnet core ดังนั้นฉันต้องติดตั้งล่าสุดของทั้ง npm และโหนดจากนั้นรีเซ็ตเส้นทางของฉันและรีบูตก่อนขั้นตอนการถอนการติดตั้งเชิงมุม / cli
วิก

21

ตรวจสอบให้แน่ใจว่าไดเร็กทอรี npm อยู่ในตัวแปร " Path " ของคุณ

หากติดตั้งโมดูลอย่างถูกต้องอาจใช้งานได้หากคุณเริ่มต้นจากไดเร็กทอรีโมดูลโหนดส่วนกลางของคุณ แต่เครื่องมือบรรทัดคำสั่งของคุณไม่ทราบว่าจะค้นหาngคำสั่งจากที่ใดเมื่อคุณไม่ได้อยู่ในไดเร็กทอรีนี้

สำหรับตัวแปรระบบWin ให้เพิ่มสิ่งที่ต้องการ:

%USERPROFILE%\AppData\Roaming\npm

และถ้าคุณใช้เทอร์มินัลที่เหมือนยูนิกซ์ (อีมูเลเตอร์):

PATH=$PATH:[path_to_your_user_profile]/path-to-npm

2
หากคุณทำงานในหลายโปรเจ็กต์โดยใช้ CLI เวอร์ชันที่แตกต่างกัน (เพื่อให้การรันเวอร์ชันโกลบอลเวอร์ชันเดียวไม่ใช่ตัวเลือก) ให้ลองexport PATH=$PATH:node_modules/@angular/cli/bin/ng- จะเลือกเวอร์ชันโลคัลตราบใดที่คุณรันngคำสั่งภายในไดเร็กทอรีรากของ Angular ของคุณ (ย่อย) โครงการ
Janaka Bandara

@JanakaBandara ฉันจะเพิ่มคำสั่งส่งออกใน Win10 ได้อย่างไร สามารถเพิ่มใน. bash_profile ได้หรือไม่
Diego Ortiz

1
ใช่ฉันมักจะเพิ่มไปที่.bashrc
Janaka Bandara

17

นี่คือวิธีที่ฉันทำให้มันได้ผลสำหรับฉัน :)

1 - npm link @angular/cli

มันจะส่งคืนเส้นทางของcliให้คุณซึ่งจะมีลักษณะเช่นนี้

/usr/local/Cellar/node/11.3.0_1/lib/node_modules/@angular/cli

สำหรับส่วนนี้/11.3.0_1โปรดแทนที่ด้วยเวอร์ชันโหนดของคุณที่สามารถพบได้โดยการพิมพ์node --version

2 - cd ~/

3 - open .bash_profile

ในโปรไฟล์ bash สร้างนามแฝงสำหรับcliเช่นนี้

alias ng="/usr/local/Cellar/node/11.3.0_1/lib/node_modules/@angular/cli/bin/ng"

4 - source ~/.bash_profile

นี่คือลักษณะของคุณ.bash_profileจะเป็นอย่างไรเมื่อคุณเพิ่มนามแฝงเข้าไป

ป้อนคำอธิบายภาพที่นี่

ตอนนี้พิมพ์ngในเทอร์มินัลจะแสดงผลลัพธ์ที่แสดงในภาพรวมที่แนบมา

ป้อนคำอธิบายภาพที่นี่

ฉันหวังว่าคำตอบนี้จะเป็นประโยชน์


1
แค่npm link @angular/cliนั้นก็เพียงพอแล้วสำหรับฉัน ขอบคุณ.
Kunal Dethe

ดีใจที่ช่วยคุณ :)
Divyanshu Rawat

16

วิธีแก้ปัญหาที่ง่ายที่สุดคือ ( หากคุณติดตั้งเชิงมุมแล้ว ):

1 ลบนามแฝงถ้ามี

unalias ng

2 เพิ่มนามแฝงที่ถูกต้อง

alias ng="/Users/<user_name>/.npm-global/bin/ng"

3 run ng ให้บริการเช่นและจะทำงาน


ไม่มีไดเร็กทอรี. npm-global บน Mac
พิกเซล

@pixel แน่นอนว่ามี npm-global บน mac โปรดอ้างอิงที่นี่สำหรับรายละเอียดเพิ่มเติมflaviocopes.com/npm-packages-local-global
Achref Gassoumi

1
@AchrefGassoumi ขอบคุณ แต่หลังจาก googling เป็นเวลาหลายชั่วโมงไม่มีตำแหน่งใดที่แนะนำการใช้นามแฝงไปยังตำแหน่งที่ตั้งจะไม่ทำงาน วิธีเดียวสำหรับฉันในการแก้ไขปัญหานี้คือใช้ nvm ตามที่ฉันอธิบายไว้ในคำตอบของฉันสำหรับคำถามนี้stackoverflow.com/questions/58138138/…
pixel

14

สำหรับ Mac run

npm install -g @angular/cli@latest

จากนั้นเรียกใช้

alias ng="/usr/local/lib/node_modules/node/lib/node_modules/@angular/cli/bin/ng"

ตรวจสอบว่าทำงานหรือไม่

ng version

ฉันต้องใช้คำสั่งนามแฝงต่อไปนี้: - alias ng = "/ usr / local / lib / node_modules / @ angular / cli / bin / ng"
cammando

11

เรียกใช้คำสั่งด้านล่าง:

npm uninstall -g angular-cli

npm uninstall -g @angular/cli

npm cache clean

npm install -g @angular/cli@latest

alias ng="C:/Users/itaas/.npm-global/ng" (ตำแหน่งของไฟล์ ng ในโฟลเดอร์ npm)

และสุดท้ายเรียกใช้:

ng -v 

Ng-v


ด้วย angular 7 ฉันเดาว่าสิ่งนี้เปลี่ยนเป็นเวอร์ชัน $ ng แล้ว
raikumardipak

แม้ว่าวิธีนี้จะแก้ปัญหาหนึ่ง แต่ก็สร้างอีกปัญหาหนึ่ง นี่จะหมายความว่าคุณใช้งาน NG จากทั่วโลกและไม่เคยมาจากระดับแอปพลิเคชัน
Itanex

ไม่มันไม่เหมือนที่นี่เรากำลังกำหนดคำหลัก ng ใหม่ ไม่มีอะไรที่เหมือนกับระดับแอป เป็นเพียงไฟล์กำหนดค่าสำหรับผู้ใช้ปัจจุบัน
Gajender Singh

9

ในกรณีของฉันให้ติดตั้ง angular cli

npm install -g @angular/cli@latest

อัปเดต Nodejs เป็นรุ่นล่าสุดจากนั้นทั้งหมดควรทำงานได้ดี

... และหากคุณยังคงมีปัญหานั้นอาจเป็นเพราะคุณรันคำสั่งในเชลล์ไม่ใช่ใน cmd (คุณต้องเรียกใช้คำสั่งใน cmd) ให้ตรวจสอบสิ่งนี้และอาจช่วยได้ ...


8

ฉันได้แก้ไขปัญหาเดียวกันด้วยการเพิ่มนามแฝงเช่น:

alias ng="path-to-your-global-node-modules/angular-cli/bin/ng"

สิ่งนี้ใช้ได้ดีสำหรับฉัน แต่ทุกครั้งเมื่อฉันเข้าสู่ระบบฉันต้องทำดังนั้นฉันจึงเพิ่มมันในไฟล์. bashrc ของฉันด้วยวิธีนี้: "nano ~ / .bashrc" จากนั้นเพิ่มบรรทัดต่อไปนี้: alias ng = "/ usr / local / lib / node_modules / @ angular / cli / bin / ng "ฉันใช้ ubuntu 14.04 บนคนจรจัด
Sabeeh Chaudhry


6

หากคุณติดตั้ง angular cli ทั่วโลก แต่ngไม่ทำงานให้ทำดังนี้:

echo -e "export PATH=$(npm prefix -g)/bin:$PATH" >> ~/.bashrc

source ~/.bashrc

ng --version

C: \> echo -e "export PATH = $ (npm prefix -g) / bin: $ PATH" >> ~ / .bashrc ระบบไม่พบเส้นทางที่ระบุ
GregJF

คำสั่งนี้ใช้สำหรับผู้ใช้ Unix / Linux เท่านั้น หากคุณใช้ Windows Angular CLI ควรติดตั้งในโหมดผู้ดูแลระบบ
faye.babacar78

5

สำหรับผู้ใช้ Mac:

1) ติดตั้ง @ angular / cli ทั่วโลก

$ sudo npm install -g @angular/cli
/usr/local/Cellar/node/10.0.0/bin/ng -> /usr/local/Cellar/node/10.0.0/lib/node_modules/@angular/cli/bin/ng

2) สร้างนามแฝงสำหรับ ng

alias ng="/usr/local/Cellar/node/10.0.0/lib/node_modules/@angular/cli/bin/ng"

เสร็จแล้ว



3

ตรวจสอบให้แน่ใจว่าได้ติดตั้งangular-cliแล้วก่อนที่จะพยายามสร้างโครงการ ผู้ใช้ Windows สามารถติดตั้งangular-cli ได้โดยไม่ต้องให้สิทธิ์คำสั่ง แต่ผู้ใช้ MAC ต้องใช้sudoก่อนที่จะดำเนินการคำสั่งดังต่อไปนี้:

sudo npm install -g angular-cli

พิมพ์รหัสผ่านเมื่อถูกถามแล้วกด Enter เพื่อดำเนินการต่อ


3

ปัญหาเดียวกันที่นี่ทำงานของ Windows 10 x 64 / NodeJS 6.9.1 / NPM 3.10.9
หลังจากติดตั้ง Angular CLI ผ่าน npm:

ไม่พบคำสั่ง 'ng'

ดำเนินการดังต่อไปนี้:

  1. ถอนการติดตั้ง npm ด้วย npm uninstall -g npm
  2. ถอนการติดตั้ง NodeJS ผ่านแผงควบคุม / โปรแกรมและคุณสมบัติต่างๆ
  3. ดาวน์โหลดและรันโปรแกรมติดตั้ง NodeJS 'เก่า' รุ่น 6.5.0จากhttps://nodejs.org/download/release/v6.5.0/ ( node-v6.5.0-x64.msi )
  4. หลังจากการติดตั้ง NodeJS 6.5.0 เสร็จสิ้นให้เปิด powershell และ npm install -g angular-cli
  5. หยิบกาแฟด่วน
  6. หลังจากติดตั้งเสร็จแล้ว ng ก็ใช้ได้

HTH


3

ก่อนอื่นตรวจสอบว่า npm และโหนดของคุณติดตั้งอย่างถูกต้อง
ด้วยคำสั่งnpm versionและnode -v.

หากเหมาะสม:

  1. ค้นหา root global Directory ของ NPM npm root -g(จะให้รูทของ global npm store ของคุณ)

  2. ถอนการติดตั้ง cli เชิงมุมเก่าด้วยnpm uninstall -g angular-cli และnpm cache clean

  3. ติดตั้งเชิงมุมเวอร์ชันใหม่อีกครั้ง npm install -g @angular/cli@latest

  4. สร้างนามแฝงของชื่อ ng:

alias ng="C:/ProgramData/npm/node_modules/@angular/cli/bin/ng"

alias ng="<ath-to-your-global-node-modules>/<angular cli path till ng>"
(จากคำตอบ 20 ต.ค. 59 เวลา 15:30 น. @ m.zemly

จากนั้นตรวจสอบว่าคุณสามารถพิมพ์ ng -v



2

หากคุณพบข้อผิดพลาดนี้เมื่อคุณติดตั้ง angular-cli -bash: ng: command not foundลองใช้งานได้

หลังจากลบ Node ออกจากระบบของคุณ

install NVM from here https://github.com/creationix/nvm
Install Node via NVM: nvm install stable
run npm install -g angular-cli

2

ตามnpmที่ angular-cliได้รับการเปลี่ยนชื่อ@angular/cliคุณสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อติดตั้ง

npm install -g @angular/cli

1

soluton สำหรับระบบปฏิบัติการ windows เท่านั้น ....... ขั้นตอนแรก:

ติดตั้งเวอร์ชัน nodejs: nodev 8.1.2

ขั้นตอนที่สอง: ตั้งค่าตัวแปรสภาพแวดล้อมเช่น: C: \ ProgramFiles \ nodejs

ขั้นตอนที่สาม: ติดตั้งเชิงมุมใช้คำสั่งนี้: npm install -g @ angular / cli

หลังการติดตั้งทุกที่ที่คุณต้องสร้างโครงการเช่น ng new first-project ......


1

สำหรับฉัน (บน MacOSX) ฉันต้องทำ:

nvm install stable
npm install -g angular-cli

สิ่งนี้ติดตั้ง ng ลงใน:

/usr/local/lib/node_modules/@angular/cli/bin/ng

แต่ npm ไม่ได้ใส่ลิงค์ไปยัง ng เข้าไป

/usr/local/bin/

ด้วยเหตุนี้จึงไม่ได้เป็นส่วนหนึ่งของ% PATH ดังนั้นจึงมีให้จากบรรทัดคำสั่งยกเว้นผ่านที่อยู่สัมบูรณ์

ดังนั้นฉันจึงใช้สิ่งต่อไปนี้สร้างลิงค์ไปยัง ng:

sudo ln -sf /usr/local/lib/node_modules/\@angular/cli/bin/ng /usr/local/bin/ng

1

วิ่ง

export PATH=$PATH:/c/Users/myusername/AppData/Roaming/npm 

ช่วย

ตรวจสอบว่าชื่อผู้ใช้จริงของคุณอยู่ในส่วนชื่อผู้ใช้


มีคนส่งเหรียญให้คนนี้ ผลงานชอบเสน่ห์
Pramesh Bajracharya

0

หากคุณกำลังทำงานในwindows 7และคุณไม่สามารถเรียกใช้ command start ด้วยng

โปรดอัปเดตเชิงมุม / CLI ในครั้งเดียวและลองใช้คำสั่ง ng

ใช้คอมแมนด้านล่างเพื่ออัปเดต CLI ล่าสุด

npm install -g @angular/cli@latest

0

ใช้เพื่ออัปเดต angular / cli // * Global package ของคุณ (cmd ในฐานะผู้ดูแลระบบ)

npm uninstall -g @angular/cli
npm cache verify
npm install -g @angular/cli@latest

0

ขั้นแรกให้ติดตั้ง '@ angular / cli' โดยใช้ npm เป็นโมดูลส่วนกลาง

sudo npm install -g @angular/cli

หลังจากนั้นลอง ping cli โดยใช้คำสั่ง 'ng' จากหน้าต่างเทอร์มินัลหากมีปัญหาเช่น

ไม่พบคำสั่ง 'ng'

จากนั้นคุณต้องตั้งค่าไฟล์

ความพร้อมใช้งานคำสั่งคุณตั้งค่าขั้นตอนนี้โดยรันคำสั่งต่อไปนี้

ln -s path-to-your-ng-command /bin

เช่น:

sudo ln -s / opt / node / lib / node_modules / @ เชิงมุม / cli / bin / ng / bin /


0

ในกรณีของฉันมันเกิดขึ้นเมื่อฉันเริ่มทำงานใหม่บนแท็บที่อยู่ติดกัน มันเป็น npm ที่ไม่ได้ตั้งค่า โปรดตรวจสอบเวอร์ชันของ npm ที่ใช้

npm -v

หรือถ้าคุณมี nvm แล้ว

รายการ nvm

หรือ

nvm ปัจจุบัน

ฉันตั้งค่าเป็น 8.9.1 จากนั้นมันก็เริ่มทำงานอีกครั้ง ฉันหวังว่ามันจะช่วยได้


0

สิ่งนี้ใช้ได้ผลสำหรับฉัน:

  1. ไปที่ C: \ Users {{users}} \ AppData \ Roaming และลบโฟลเดอร์ npm
  2. ถอนการติดตั้งโหนดและติดตั้งอีกครั้ง
  3. รันคำสั่งเพื่อติดตั้ง angular cli

    npm install -g @angular/cli
    

0

ในกรณีของฉันฉันใช้งานเวอร์ชันโหนดที่ไม่ถูกต้อง

ก่อนหน้านี้ฉันเพิ่งติดตั้งโหนดเวอร์ชันใหม่เพื่อเล่นกับ Angular (2) ในที่ทำงานเราใช้ 6.x ซึ่งเป็นค่าเริ่มต้นของฉันใน nvm หลังจากรีสตาร์ทแล็ปท็อปngหยุดทำงานเพียงเพราะฉันใช้งานโหนด 6.x อีกครั้ง สำหรับฉันแล้วมันเป็นเพียงเรื่องของการใช้เวอร์ชันที่ฉันติดตั้ง Angular CLI:

nvm use node // with the node alias pointing to the right version

หรือ

nvm use v8.11.3 // if you happen to know the version

ตรวจสอบเวอร์ชันและนามแฝงที่ติดตั้งของคุณด้วย

nvm list 

0

หากคุณมีคอมพิวเตอร์ MacOS (ของฉันคือ MOJAVE 10.14.2) ให้เพิ่มบรรทัดเหล่านี้ต่อท้ายไฟล์ ~ / .bash_profileของคุณ:

export ANGULAR=~/.nvm/versions/node/v10.8.0/bin/ng
export PATH=$ANGULAR:$PATH

โปรดสังเกตว่า v10.8.0 เป็นเวอร์ชันของ Node.js ที่ฉันติดตั้งไว้ หากต้องการรับเวอร์ชันที่เป็นของคุณให้เรียกใช้สิ่งนี้:

node --version

เมื่อเสร็จแล้วให้โหลดใหม่ผ่าน Terminal / bash ของคุณ:

cd ~
source .bash_profile

หลังจากทำตามขั้นตอนเหล่านี้คุณจะสามารถเรียกใช้ไฟล์ไบนารีngของคุณได้


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